找不到-lDoubleConversion的库

问题描述 投票:4回答:3

我试图在XCode上构建但是发生了ld: library not found for -lDoubleConversion错误。我可以建立react-native run-ios。这样可行,但XCode无法构建......

ld:警告:找不到选项'-L / Users / xxxxx / Library / Developer / Xcode / DerivedData / xxxxx / Build / Products / Debug-iphonesimulator / DoubleConversion'ld:warning:找不到选项'-L /的目录Users / xxxxx / Library / Developer / Xcode / DerivedData / xxxxx / Build / Products / Debug-iphonesimulator / Folly'ld:warning:找不到选项'-L / Users / xxxxx / Library / Developer / Xcode / DerivedData / xxxxx的目录/ Build / Products / Debug-iphonesimulator / GTMOAuth2'ld:warning:找不到选项'-L / Users / xxxxx / Library / Developer / Xcode / DerivedData / xxxxx / Build / Products / Debug-iphonesimulator / GTMSessionFetcher'ld的目录:警告:找不到选项'-L / Users / xxxxx / Library / Developer / Xcode / DerivedData / xxxxx / Build / Products / Debug-iphonesimulator / Google-Maps-iOS-Utils'ld:warning:找不到选项的目录'-L / Users / xxxxx / Library / Developer / Xcode / DerivedData / xxxxx / Build / Products / Debug-iphonesimulator / GoogleToolboxForMac'ld:warning:找不到选项'-L / Users / xxxxx / Library的目录/ Developer / Xcode / DerivedData / xxxxx / Build / Products / Debug-iphonesimulator / Protobuf'ld:warning:找不到选项'-L / Users / xxxxx / Library / Developer / Xcode / DerivedData / xxxxx / Build / Products / Debug-iphonesimulator / React'ld:warning:找不到选项'-L / Users / xxxxx / Library / Developer / Xcode / DerivedData / xxxxx / Build / Products / Debug-iphonesimulator / glog'ld的目录:警告:找不到目录选项'-L / Users / xxxxx / Library / Developer / Xcode / DerivedData / xxxxx / Build / Products / Debug-iphonesimulator / leveldb-library'ld:warning:找不到选项'-L / Users / xxxxx / Library的目录/ Developer / Xcode / DerivedData / xxxxx / Build / Products / Debug-iphonesimulator / nanopb'ld:warning:找不到选项'-L / Users / xxxxx / Library / Developer / Xcode / DerivedData / xxxxx / Build / Products / Debug-iphonesimulator / react-native-google-maps'ld:warning:找不到选项'-L / Users / xxxxx / Library / Developer / Xcode / DerivedData / xxxxx / Build / Products / Debug-iphonesimulator / react-native -maps'l d:警告:找不到选项'-L / Users / xxxxx / Library / Developer / Xcode / DerivedData / xxxxx / Build / Products / Debug-iphonesimulator / yoga'ld的目录:找不到-lDoubleConversion clang的库:错误:链接器命令失败,退出代码为1(使用-v查看调用)

reactjs react-native
3个回答
2
投票

XCode找不到lDoubleConversion库,需要将库添加到cocoa pods文件中。

您可以按照以下步骤轻松完成此操作

1.将库文件添加到podfile

pod 'DoubleConversion', :podspec => './../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec'

2.删除Podfile.lock

3.运行pod安装

4.在xcode链接框架和库中添加DoubleConversion.a

5.清理项目并重新构建。

这应该有效。


2
投票

在升级到RN 0.59之后我有一个问题。

对我有用的解决方案是删除ios/build文件夹,然后执行以下操作:

cd ios

pod install

当我这样做时,我看到有关Folly的错误,人们建议这样做:

pod deintegrate

pod install

我这样做了,但它仍然会抛出关于Folly的错误,所以我删除了Podfile.lock,因为pods保留了与RN 0.59不兼容的旧版Folly。

注意:我发现有人发帖说不建议删除整个锁文件。相反,您应该只删除锁定文件中的相关行,即与Folly相关的行。我已经删除了锁定文件,但一切正常。

我跑了pod update更新了一堆东西并成功完成。

下次我运行pod install时,它产生了一个很好的绿色,成功的安装列表。

然后我再次做了react-native run-ios,并且它在一段时间内第一次起作用,除了它产生死亡的红色屏幕。

所以我从iOS模拟器设备上删除了我的应用程序,然后运行:

rm -rf node_modules

npm install

killall -9 node

killall -9 node只是为了杀死Metro Bundler。对我而言,这是我最喜欢的命令。如果您在计算机上运行十二个node.js API,可能会执行类似sudo lsof -i :8081的操作并找到Metro Bundler的进程ID并通过PID终止它们。例如,如果您看到Metro Bundler作为PID 27322运行,那么请执行kill -9 27322

然后我在一个独立的终端上运行它:

npm start -- --reset-cache

回到VS Code集成终端:

react-native run-ios

有效 !!!!!!!!

然后我跑了:

react-native run-android

虽然工作但在模拟器设备上停留在0%,所以我从模拟器上删除了APK并再次运行react-native run-android

有效 !!!!!!!!

© www.soinside.com 2019 - 2024. All rights reserved.