大家
我遇到的问题是我无法编译我的应用程序,因为我收到以下错误:
ld: library not found for -lBolts
clang: error: linker command failed with exit code 1 (use -v to see invocation)
我将我的XCode项目配置为使用cocoapods,这是我的pod列表:
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.
我尝试过的事情:
答案 0 :(得分:5)
我有两个问题:
第一个问题是我正在构建原始的YourApp.xcodeproj
Xcode项目文件。
根据react-native
:
从现在开始,在Xcode中打开
YourApp.xcworkspace
而不是YourApp.xcodeproj
。
所以我不得不切换到Cocoapods在YourApp.xcworkspace
生成的新pod init
(或生成它的任何内容)。
react-native
项目的自述文件未提及如果您之前已根据步骤 4将Facebook SDK添加到YourApp.xcodeproj
的{{1}}文件夹中。将SDK添加到Facebook SDK for iOS - Getting Started教程的Xcode项目,然后您应该删除这些引用,因为Cocoapods会将FB SDK代码拉入Frameworks
文件夹,因此您不再需要引用FB SDK分开。否则,Xcode会尝试根据Cocoapods的设置和指令进行构建,但会找到包含“非Pods
”二进制文件的FB SDK。
最终,您的dylib
文件夹应该只包含Frameworks
个文件。
清理,然后构建项目。它应该有效。
答案 1 :(得分:1)
我刚刚解决了这个问题:
Pods
文件夹和Podfile.lock
pod install
Pods
项目上,在每个广告连播目标上,将Build Active Architecture Only
设置为No
答案 2 :(得分:0)
我正在我的演示应用中集成MFSideMenu
并收到同样的错误
我的解决方案工作如下:
构建阶段 - >链接二进制文件库 - >添加新 - >然后从工作区中选择 libXYZ.a
(在我的情况下为libMFSideMenu.a
) - > 添加。再次清理项目和建筑物
答案 3 :(得分:0)
就我而言,我需要使用Podfile
目录中的以下命令重新安装Pod,
pod deintegrate
pod install
然后在清除 deriveddata 文件夹
后进行构建如果它不起作用,请遵循答案here
答案 4 :(得分:0)