iOS 4.3上的libobjc.A.dylib编译错误

obe*_*aum 6 xcode ios

我在iOS模拟器4.3中遇到编译错误我实际上无法弄明白,我得到的错误是:

dyld: lazy symbol binding failed: Symbol not found: _objc_retain
  Referenced from: /Users/ben/Library/Application Support/iPhone Simulator/4.3.2/Applications/75915A97-7C3D-489A-B7B0-7B6895A4B584/AppName.app/AppName
  Expected in: /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.3.sdk/usr/lib/libobjc.A.dylib

dyld: Symbol not found: _objc_retain
  Referenced from: /Users/ben/Library/Application Support/iPhone Simulator/4.3.2/Applications/75915A97-7C3D-489A-B7B0-7B6895A4B584/AppName.app/AppName
  Expected in: /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.3.sdk/usr/lib/libobjc.A.dylib
Run Code Online (Sandbox Code Playgroud)

注:
该库被引用(libobjc.A.dylib)实际上是在"预期的地方"的代码工作正常的iOS5的设备上,并在iOS5的模拟器.

小智 28

添加-fobjc-arc构建设置=>其他链接器标志(OTHER_LDFLAGS)以用于不同的配置

  • 您将它用作**链接器**标志,而不是**编译器**标志,因此它不会在编译时影响ARC,仅在链接时影响ARC. (4认同)