在iPhone SDK 3.0中链接静态库
问题描述:
我有一个严重依赖OpenCV库的iPhone应用程序;因此,我编译了这个库的静态版本,以便与我的应用程序一起使用。这样做的说明相对简单:Using OpenCV on iPhone。我遇到的唯一问题是将连接器标记STANDARD_C_PLUS_PLUS_LIBRARY_TYPE
设置为“standard
”。该应用程序编译和运行在OS 2.0和2.2下完美。在iPhone SDK 3.0中链接静态库
升级到SDK 3.0并尝试重新编译我的应用程序后,我遇到了此链接程序标志的问题。
LD:当链接我得到这个错误没有找到-lstdC++库 - 静态
这也是有趣的是,我的系统上“的libstdC++ - 静”的存在似乎每一个的iPhoneOS和iPhoneSimulator下SDK除iPhoneOS.platform/SDKs/iPhoneOS3.0.sk外。以下是搜索结果:
$ locate libstdc++-static
/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.0.sdk/usr/lib/libstdc++-static.a
/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.1.sdk/usr/lib/libstdc++-static.a
/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.2.1.sdk/usr/lib/libstdc++-static.a
/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS2.2.sdk/usr/lib/libstdc++-static.a
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator2.0.sdk/usr/lib/libstdc++-static.a
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator2.1.sdk/usr/lib/libstdc++-static.a
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator2.2.1.sdk/usr/lib/libstdc++-static.a
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator2.2.sdk/usr/lib/libstdc++-static.a
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator3.0.sdk/usr/lib/libstdc++-static.a
/Developer/SDKs/MacOSX10.4u.sdk/usr/lib/libstdc++-static.a
/Developer/SDKs/MacOSX10.5.sdk/usr/lib/libstdc++-static.a
/usr/lib/libstdc++-static.a
我很困惑,一直没能在Google或iPhone开发论坛上找到任何答案。我真的很感激,如果有人能在这里阐明一些亮光。
谢谢!
答
只是猜测 - 尝试将其中一个目录添加到生成属性中的“库搜索路径”选项?
什么版本的libstdC++在OS 3.x中? – 2009-09-09 23:37:27