ld:找不到-l使用cocoapods的库
每个人
我遇到的问题是我无法编译我的应用程序,因为我得到以下错误:
ld: library not found for -lBolts clang: error: linker command failed with exit code 1 (use -v to see invocation)
我有我的XCode项目configuration使用cocoapods,这是我的豆荚列表:
pod 'Google/Analytics', '~> 1.0.0' pod 'AFNetworking', '~> 2.0' pod 'XCDYouTubeKit', '~> 2.4.0' pod 'FBSDKCoreKit' pod 'FBSDKShareKit' pod 'FBSDKLoginKit' pod 'Parse' pod 'ParseUI' pod 'ParseFacebookUtilsV4' pod 'ParseTwitterUtils'
这是命令pod install
的输出:
Updating local specs repositories Analyzing dependencies Downloading dependencies Installing AFNetworking (2.6.3) Installing Bolts (1.5.0) Installing FBSDKCoreKit (4.8.0) Installing FBSDKLoginKit (4.8.0) Installing FBSDKShareKit (4.8.0) Installing Google (1.0.7) Installing GoogleAnalytics (3.14.0) Installing GoogleNetworkingUtilities (1.0.0) Installing GoogleSymbolUtilities (1.0.3) Installing GoogleUtilities (1.1.0) Installing Parse (1.10.0) Installing ParseFacebookUtilsV4 (1.9.1) Installing ParseTwitterUtils (1.9.1) Installing ParseUI (1.1.7) Installing XCDYouTubeKit (2.4.1) Generating Pods project Integrating client project Sending stats Pod installation complete! There are 10 dependencies from the Podfile and 15 total pods installed.
我曾经尝试过的东西:
- 清洁和重build
- 退出xcode,清理并重build
- 删除所有的豆荚,并重新安装,清理和重build
我有两个问题:
-
第一个问题是我正在构build我的原始
YourApp.xcodeproj
Xcode项目文件。根据
react-native
:从现在起,在Xcode中打开
YourApp.xcworkspace
而不是YourApp.xcodeproj
。所以我不得不在
pod init
(或任何生成的)上切换到由Cocoapods生成的新的YourApp.xcworkspace
。 -
react-native
项目的README没有提到,如果你之前已经根据步骤4将Facebook SDK添加到YourApp.xcodeproj
的Frameworks
文件夹中。 将SDK添加到你 的iOS SDK的Xcode项目 – 入门教程,那么你应该删除这些引用,因为Cocoapods会将FB SDK代码拖到Pods
文件夹中,所以你不再需要单独引用FB SDK。 否则,Xcode会尝试根据Cocoapods的设置和指示进行构build,但发现FB SDK中包含“不是dylib
”的二进制文件。最终,您的
Frameworks
文件夹应该只有libPods-YourApp.a
文件。清理,然后build立项目。 它应该工作。
我刚刚解决了这个问题:
- 删除
Pods
文件夹和Podfile.lock
- 运行
pod install
- 在Xcode的
Pods
项目中,在每个Pod目标上,将Build Active Architecture Only
设置为No
- 清理并重新构build
我正在整合MFSideMenu
在我的演示应用程序,并得到相同的错误。
解决scheme为我工作如下
构build阶段 – >链接二进制库 – >添加新 – >然后select libXYZ.a
从工作区(在我的情况下它的libMFSideMenu.a
) – > 添加它。 清理项目并再次build立