[英]file was built for i386 which is not the architecture being linked (x86_64) while compiling OpenCV2.2 for iOS 4.2 on Mac OSX 10.6
I have been following the simple guide at http://www.atinfinity.info/wiki/index.php?OpenCV/Using%20OpenCV%202.2%20on%20iOS%20SDK%204.2 (which uses the older guide I've also read at http://niw.at/articles/2009/03/14/using-opencv-on-iphone/en ) to get OpenCV2.2 compiled to work on iOS 4.2. 我一直在关注http://www.atinfinity.info/wiki/index.php?OpenCV/Using%20OpenCV%202.2%20on%20iOS%20SDK%204.2上的简单指南(使用旧指南我也读过在http://niw.at/articles/2009/03/14/using-opencv-on-iphone/en )将OpenCV2.2编译为在iOS 4.2上运行。 Everything went smoothly until I tried to build.
一切顺利,直到我试图建立。 When I run the following:
当我运行以下内容时:
lc:opencv_simulator leonard$ ../opencv_cmake.sh Simulator ../../OpenCV-2.2.0/
I get the following error: 我收到以下错误:
ld: warning: in /Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.2.sdk/usr/lib/libSystem.dylib,
file was built for i386 which is not the architecture being linked (x86_64)
This is using (among other settings, obviously): 这是使用(显然在其他设置中):
-D CMAKE_OSX_ARCHITECTURES="i386"
I read that on OSX 10.6 i386 is seen as the default, so it uses the system default (but that is x86_64). 我在OSX 10.6上看到i386被视为默认值,因此它使用系统默认值(但这是x86_64)。 I also read I could use:
我也读过我可以用的:
export CFLAGS=-m32
export CPPFLAGS=-m32
But this doesn't work either. 但这也不起作用。
Any ideas? 有任何想法吗?
用于构建特定体系结构的gcc标志是-march
如
gcc -march=i386 ...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.