Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在iPhone SDK 3.0中链接静态库_Iphone_Cocoa Touch_Xcode - Fatal编程技术网

在iPhone SDK 3.0中链接静态库

在iPhone SDK 3.0中链接静态库,iphone,cocoa-touch,xcode,Iphone,Cocoa Touch,Xcode,我有一个严重依赖OpenCV库的iPhone应用程序;因此,我已经编译了这个库的静态版本,以便与我的应用程序一起使用。执行此操作的说明相对简单:。我遇到的唯一问题是将链接器标志STANDARD\u C\u PLUS\u PLUS\u LIBRARY\u TYPE设置为“STANDARD”。该应用程序在OS 2.0和2.2下编译并运行良好 升级到SDK 3.0并尝试重新编译我的应用程序后,我遇到了此链接器标志的问题。我在链接时遇到此错误: ld:找不到-lstdc++-static的库 同样有趣的

我有一个严重依赖OpenCV库的iPhone应用程序;因此,我已经编译了这个库的静态版本,以便与我的应用程序一起使用。执行此操作的说明相对简单:。我遇到的唯一问题是将链接器标志
STANDARD\u C\u PLUS\u PLUS\u LIBRARY\u TYPE
设置为“
STANDARD
”。该应用程序在OS 2.0和2.2下编译并运行良好

升级到SDK 3.0并尝试重新编译我的应用程序后,我遇到了此链接器标志的问题。我在链接时遇到此错误:

ld:找不到-lstdc++-static的库

同样有趣的是,在我的系统上,除了iPhoneOS.platform/SDKs/iPhoneOS3.0.sk之外,似乎每个iPhoneOS和iPhoneSimulator SDK都有“libstdc++-static”。以下是搜索结果:

$ 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
我很困惑,在谷歌或iPhone开发者论坛上都找不到任何答案。如果有人能在这里透露一些情况,我将不胜感激


谢谢

这真是令人费解,我唯一能想到的是
/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator3.0.sdk
不在您的库搜索路径中,但这不太可能。

只是猜测-尝试将其中一个目录添加到构建属性中的“库搜索路径”选项中?

这很有效!谢谢我试图从一个旧的SDK复制该文件,但没有成功(尽管我不确定是否需要执行与
ldconfig
等效的操作来重新扫描该目录,所以我准备重新启动)太棒了!我开始考虑LD_LIBRARY_PATH,然后认为它可能在属性中。我试图为iPhone操作系统而不是模拟器编译。你是对的,那只是从我身边溜走了一下,那么iphone的库在哪里呢?它不会出现在您的列表中……对,这就是问题所在;)似乎苹果在SDK 3.0中遗漏了它——可能只是一个错误。事实证明,该库的2.2版本在3.0中运行良好。OS3.x中的libstdc++版本是什么?