4

今天升级到 Mountain Lion 和 Xcode 4.4 后,我的一个项目不再编译。我已经验证它在 Xcode 4.3 上仍然可以编译。这是我得到的输出 - 有什么想法吗?

Ld "/Users/Adam/Library/Developer/Xcode/DerivedData/Home_Loan_Finder-ciynsbeemzwbzhenhqlhhzbsgebo/Build/Products/Debug-iphonesimulator/Home Loan Finder.app/Home Loan Finder" normal i386
    cd "/Users/Adam/Aspyre/Code/Projects/Binary/Home Loan Finder"
    setenv MACOSX_DEPLOYMENT_TARGET 10.6
    setenv PATH "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch i386 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.1.sdk -L/Users/Adam/Library/Developer/Xcode/DerivedData/Home_Loan_Finder-ciynsbeemzwbzhenhqlhhzbsgebo/Build/Products/Debug-iphonesimulator -F/Users/Adam/Library/Developer/Xcode/DerivedData/Home_Loan_Finder-ciynsbeemzwbzhenhqlhhzbsgebo/Build/Products/Debug-iphonesimulator "-F/Users/Adam/Aspyre/Code/Projects/Binary/Home Loan Finder/../../../SDKs" -filelist "/Users/Adam/Library/Developer/Xcode/DerivedData/Home_Loan_Finder-ciynsbeemzwbzhenhqlhhzbsgebo/Build/Intermediates/Home Loan Finder.build/Debug-iphonesimulator/Home Loan Finder.build/Objects-normal/i386/Home Loan Finder.LinkFileList" -mmacosx-version-min=10.6 -Xlinker -objc_abi_version -Xlinker 2 -fobjc-arc -fobjc-link-runtime -Xlinker -no_implicit_dylibs -D__IPHONE_OS_VERSION_MIN_REQUIRED=50100 -framework CoreGraphics -framework Foundation -framework UIKit -framework MessageUI -framework CoreData -framework ShinobiCharts -framework OpenGLES -framework QuartzCore -framework Security -o "/Users/Adam/Library/Developer/Xcode/DerivedData/Home_Loan_Finder-ciynsbeemzwbzhenhqlhhzbsgebo/Build/Products/Debug-iphonesimulator/Home Loan Finder.app/Home Loan Finder"

0  0x103ced280  __assert_rtn + 144
1  0x103d43877  ld::tool::OutputFile::addressOf(ld::Internal const&, ld::Fixup const*, ld::Atom const**) + 215
2  0x103d4512c  ld::tool::OutputFile::applyFixUps(ld::Internal&, unsigned long long, ld::Atom const*, unsigned char*) + 300
3  0x103d46a6d  ld::tool::OutputFile::writeAtoms(ld::Internal&, unsigned char*) + 621
4  0x103d42c14  ld::tool::OutputFile::writeOutputFile(ld::Internal&) + 564
5  0x103d3d963  ld::tool::OutputFile::write(ld::Internal&) + 147
6  0x103ced8ef  main + 1263
7  0x103cdc234  start + 52
A linker snapshot was created at:
    /tmp/Home Loan Finder-2012-06-27-140754.ld-snapshot
ld: Assertion failed: (_mode == modeFinalAddress), function finalAddress, file /SourceCache/ld64/ld64-133.3/src/ld/ld.hpp, line 657.
clang: error: linker command failed with exit code 1 (use -v to see invocation)
4

3 回答 3

2

我现在正在研究这个。

我们相当肯定这是因为当前的框架是使用 Xcode 4.3 构建的,而 4.4 编译器并没有正确地将所有内容链接在一起。

解决方案似乎只是在 Xcode 4.4 中构建框架——我们目前正在审查这个,应该很快就会更新框架!

完整披露:我在 ShinobiCharts 上为 ShinobiControls 工作。

编辑:现在可以使用新版本的 ShinobiCharts,修复了这些问题。

于 2012-07-31T14:45:58.540 回答
1

对于那些使用 ShinobiCharts.framework 的人:在 Shinobi 类上创建类别会导致此类错误。作为一种解决方法,您可以用继承替换类别(这可能非常痛苦)。

于 2012-07-27T11:59:41.247 回答
0

为了对此有所了解,解决方法是将“条形样式”从“所有符号”更改为“非全局符号”,从而允许在类别中使用全局符号。

全面披露:我也为 ShinobiControls 工作!

于 2013-11-07T12:02:38.780 回答