1、前言
本机 Xcode9.3 ,项目使用 CocoaPods 组件化SDK开发,被给的SDK会报错:
ld: warning: Auto-Linking framework not found CoreServices
Undefined symbols for architecture x86_64:
上传者XCode版本号.png
直觉考虑可能是xcode版本问题,这个mac好久没用开发环境不是最新的。之后百度Auto-Linking framework not found CoreServices,按百度的第一个方法执行:
Build Settings 中 Link Frameworks Automatically 把默认Yes 改成 No 再pod install 问题解决
如果用 CocoaPods 集成,默认是 Yes!
知道原因,解决就好办啦!但是,突然想到,以后 pod install 或 pod update 时,难道要人工的设置一次??? 不可能!不可能!不可能!
最后,还是在 CocoaPods
官方文档找到答案 CocoaPods Guides - post_install:
在Podfile文件最后,添加下面代码
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['CLANG_MODULES_AUTOLINK'] = 'NO'
end
end
end
这个是一个勾子hook,在pod安装完成前,允许更改配置或做些别的事件!
2、问题原因
因为我们新的项目使用 CocoaPods 组件化,所以最后打SDK的项目是CocoaPods集成的,问题就出在这里
网友评论