我正在尝试在 Objective-C++ 中使用 Xcode 开发一个 iOS 应用程序(因此使用 .m、.mm 和 .cpp 文件)。.cpp 文件使用第三方库 (OpenCV)。
链接时构建失败,并出现如下警告(导致未定义的引用错误):
ld: warning: ignoring file /opt/local/lib/libopencv_calib3d.dylib,
file was built for unsupported file format
( 0xcf 0xfa 0xed 0xfe 0x 7 0x 0 0x 0 0x 1 0x 3 0x 0 0x 0 0x 0 0x 6 0x 0 0x 0 0x 0 )
which is not the architecture being linked (i386):
/opt/local/lib/libopencv_calib3d.dylib
我的拱门是i386。
我可以在构建日志中看到 Xcode 运行了以下命令:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++ -arch i386 ...
我不知道它是否相关,但是当我输入llvm-g++ --version
终端时,我得到:
i686-apple-darwin11-llvm-g++-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.11.00)
我能做些什么来让所有东西都建立在同一个架构上?