我刚刚升级到 iPhone SDK 4.0,并重新编译了我的静态库和应用程序,当我在装有 iOS 3.1.3(使用部署目标 3.0)的设备上运行它时,它说:
dyld: lazy symbol binding failed: Symbol not found: ___sync_fetch_and_add_4
Referenced from: /var/mobile/Applications/7CA42202-DA9D-4A10-918D-593362E18000/renderer.app/renderer
Expected in: /usr/lib/libSystem.B.dylib
dyld: Symbol not found: ___sync_fetch_and_add_4
Referenced from: /var/mobile/Applications/7CA42202-DA9D-4A10-918D-593362E18000/renderer.app/renderer
Expected in: /usr/lib/libSystem.B.dylib
我找到了这篇博文,但除了它似乎没有提供任何建议
尝试使用 gcc 4.0 而不是 4.2,并且
它应该已在 SDK 4.0 中修复。
看来他指向的代码已在 SDK 4.0中修复(并且他展示此行为的最小应用程序示例对我来说效果很好),但我仍然收到此错误。