我正在处理我的应用,没有更改任何设置或pod,我尝试在大约两周后存档一个版本,但它失败了。然后我尝试调试构建(正常的Cmd + R),但它失败并出现错误:
ld: library not found for -lPods-AFNetworking
我多次尝试pod install
。我已尝试删除与pod相关的所有内容(而不是Podfile本身)并再次生成pod install
/ pod update
。没有用。
这是我的Podfile:
platform :ios, '8.0'
link_with 'MY_APP_NAME_REDACTED'
pod 'Parse', '1.7.4'
pod 'ParseFacebookUtils', '1.7.4'
pod 'ParseCrashReporting', '1.7.4'
pod 'GPUImage'
pod 'AFNetworking'
pod 'IntentKit'
inhibit_all_warnings!
我没有碰过它,它一直工作到今天早上。现在,在我尝试过的所有内容之后,经过一次干净的重新安装,我得到了:
我的应用扩展程序中的 Lexical or preprocessor issue: 'Parse/Parse.h' file not found
(我的应用本身似乎没有问题)。
我不知道构建系统如何能够从绝对没有任何东西中有效地“自毁”自己。我没有做任何pod更新,pod安装,我没有触及Podfile,我没有更改我的项目中的任何配置设置等。我只是编写代码,当我尝试存档我的项目发送给beta测试人员它破了。
如果我更改了我的podfile并将我的共享扩展名添加到link_with
:
platform :ios, '8.0'
link_with 'MY_APP_NAME_REDACTED', 'Share Extension'
pod 'Parse', '1.7.4'
pod 'ParseFacebookUtils', '1.7.4'
pod 'ParseCrashReporting', '1.7.4'
pod 'GPUImage'
pod 'AFNetworking'
pod 'IntentKit'
inhibit_all_warnings!
然后我收到一些警告和错误。
Pods was rejected as an implicit dependency for 'libPods.a' because its architectures 'arm64' didn't contain all required architectures 'armv7 arm64'
ld: warning: directory not found for option '-L/Users/Can/Documents/Programming/iOS/MY_APP_NAME_REDACTED/build/Debug-iphoneos'
ld: warning: directory not found for option '-L/Users/Can/Documents/Programming/iOS/MY_APP_NAME_REDACTED/build/Release-iphoneos'
ld: library not found for -lPods-AFNetworking <--- THIS IS ERROR
如何重新构建项目?我在Xcode 6.3.2和CocoaPods 0.37.2。
答案 0 :(得分:6)
我几乎不知道出了什么问题,但是经过几个小时的调查(并完全删除吊舱,放弃,然后再次尝试),我已经清理了一切。我也重置了我项目的配置(在调查时我不小心删除了一些)。我删除了xcworkspace文件,Pods文件夹和Podfile.lock文件。还有设置Build active architecture only
并且它是粗体设置(覆盖默认设置)为yes,我已经删除了覆盖并且它再次变为不再。这是一个干净的开始。回到我的Podfile并重新构建了一下:
platform :ios, '8.0'
link_with 'MY_APP_NAME_REDACTED', 'Share Extension'
def shared_pods
pod 'Parse', '1.7.4'
end
target 'uLouder' do
shared_pods
pod 'GPUImage'
pod 'AFNetworking'
pod 'IntentKit'
pod 'ParseFacebookUtils', '1.7.4'
pod 'ParseCrashReporting', '1.7.4'
end
target 'Share Extension' do
shared_pods
end
我的应用和我的共享扩展程序只需要Parse。我的应用扩展程序不需要其他人。然后我构建了,并且在我的项目中遇到了一些其他非pod框架的错误。我删除了它们,从构建阶段等中删除它们然后重新添加它们,并且它成功构建(老实说,我不知道什么是删除 - 从 - 所有 - 然后添加 - 再次修复但它显然已修复东西)。
现在我的项目使用上面的podfile成功编译。作为参考,我正在使用Parse,我有一个共享扩展。请特别注意这个场景,因为您显然不能在应用扩展程序上拥有仅32位的二进制文件/框架/库。