我在为Simulator编译我的应用时出现问题。在设备运行完美,但一旦我尝试在模拟器中编译我得到以下错误:
ld: building for iOS Simulator, but linking against dylib built for MacOSX file '/Applications/Xcode.app/Contents/Developer/Library/Frameworks/XCTest.framework/XCTest' for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
我在发布这个问题之前检查过,但我在stackoverflow中找到了答案,比如运行它,
export PATH=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:$PATH
或
问题是Xcode 5用clang替换了gcc并添加了" -triple"将OSX指定为目标的选项。如果你通过" -miphoneos-version-min = 7.0"在两个gcc命令行上它都有效。如果你通过" - verbose"你可以看到clang命令行。到gcc。添加到Xcode 5的PATH也是必要的,这样cmake就可以找到必要的工具:export PATH = / Applications / Xcode5-DP6.app / Contents / Developer / Toolchains / XcodeDefault.xct oolchain / usr / bin:/Applications/Xcode5-DP6.app/Contents/Developer/usr/bin:$ PATH这些都不是官方的...但到目前为止对我有用。
我真的不明白该怎么做。有什么帮助吗?
答案 0 :(得分:8)
检查Build Settings
您的测试目标。这个值看起来应该类似:
如果您有任何转义符号,请考虑修复它。我在这里:\"
。我刚刚删除了它们
另请注意:订单很重要!
<强> P.S。来自GraehamF Build -> Clean
总是一件好事并重新启动Xcode,因此更改生效
答案 1 :(得分:1)
当我在XCode项目中遇到此错误时,我打开文件???.xcodeproj
(在SubLime文本编辑器中),并删除了以下几行。警告将不再存在!
LIBRARY_SEARCH_PATHS = (
"\"${PROJECT_DIR}/../../../../../usr/lib\"/**",
"\"${PROJECT_DIR}/../../../../../usr/lib\"/**",
);