我一直在谷歌搜索并尝试解决我运气不好的问题,所以我在这里问我的第一个问题。
我有一台装有 Lion (1.7.4)、Xcode 4 的 MacBook。我需要使用 Leopard 和 Xcode 3 制作的 C++ 应用程序。
该应用程序带有自己的 OpenCV.framework,并且是为 32 位架构制作的(如图 1 所示)
我试图让它在Xcode 3上工作,它工作得很好,不需要安装 OpenCV 或其他东西(那是因为 OpenCV.framework 包含在项目中,对吧?)。
在Xcode 4上它不起作用。这就是我尝试过的:
- “按原样”运行它:即使 OpenCV.framework 在应用程序目录中,我也会收到以下错误:
dyld:库未加载:@executable_path/../Frameworks/OpenCV.framework/Versions/A/OpenCV
引用自:/Users/fabrizioborgia/Library/Developer/Xcode/DerivedData/suiviGUI-awhilvjpoqatfdansnpqcexpnxaw/Build/Products/Debug/suiviGUI .app/Contents/MacOS/suiviGUI 原因:找不到图像
删除 OpenCV.framework,通过MacPorts安装 OpenCV并链接库。不,这些库是 64 位的,我的程序是 32 位的。删除了 OpenCV 和 MacPorts。
删除 OpenCV.framework,通过Homebrew (brew install opencv --build32)安装 32 位 OpenCV并链接库。不,我收到以下错误,所以我假设这些库仍然是 64 位的。正确的?删除了 OpenCV 和 Homebrew。
ld:警告:忽略文件/usr/local/Cellar/opencv/2.4.1/lib/libopencv_calib3d.2.4.1.dylib,文件是为不受支持的文件格式构建的,它不是被链接的体系结构(i386)
- 删除 OpenCV.framework,自己安装 OpenCV 2.4.1 (使用 make 和其他东西)并链接项目中的库。不,如果我在 32 位架构上运行程序,它会告诉我这些库不适用于 32 位架构。
无论如何,如果我尝试在 64 位上运行它,编译成功但程序无法正常运行。
伙计们,真的,我没有想法,也许我走错了方向,也许我只需要找到另一个 OpenCV.framework 或者我缺少一些链接设置,并且程序看不到框架。
任何人都可以帮忙吗?