python-OpenCv(Leopard)中的“ Mach-o,但结构错误”
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python-OpenCv(Leopard)中的“ Mach-o,但结构错误”,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2081字,纯文字阅读大概需要3分钟。
内容图文
我已经使用CMake从doc安装了OpenCV.
我的?/ .profile文件是:
export DYLD_LIBRARY_PATH=/usr/local/mysql/lib/
export ARCHFLAGS="-arch i386 -arch x86_64"
export ARCHFLAGS="-arch i386"
export VERSIONER_PYTHON_PREFER_64_BIT=yes
export VERSIONER_PYTHON_PREFER_32_BIT=no
export PATH=/opt/local/bin:/opt/local/sbin:$PATH
export PYTHONPATH=/Library/Python/2.6/site-packages:$PYTHONPATH
export DYLD_FALLBACK_LIBRARY_PATH=/opt/local/lib
与导入简历我有这个错误:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.6/site-packages/cv.py", line 1, in <module>
from cv2.cv import *
ImportError: dlopen(/usr/local/lib/python2.6/site-packages/cv2.so, 2): no suitable image found. Did find:
/usr/local/lib/python2.6/site-packages/cv2.so: mach-o, but wrong architecture
我的python架构:
file "$( "$(which python)" -c "import sys;print(sys.executable)" )"
/usr/bin/python: Mach-O universal binary with 3 architectures
/usr/bin/python (for architecture x86_64): Mach-O 64-bit executable x86_64
/usr/bin/python (for architecture i386): Mach-O executable i386
/usr/bin/python (for architecture ppc7400): Mach-O executable ppc
我已经阅读并在stackoverflow中运行了有关OpenCV和Leopard的所有答案,但仍然高于错误.
任何帮助,将不胜感激.
提前致谢
解决方法:
豹(和雪豹)是杂种,它既包含二进制文件,又包含32位和64位二进制文??件……并且将它们混合在一起……这是一场噩梦.据我所知,您不能在同一运行程序中混合使用32位和64位库.
我已经使用了这个hack:How to force /usr/bin/gcc -> /usr/bin/gcc -m32?
它使所有内容都可以在i386(3月32位)中进行编译.您也可以将其强制为64(不推荐).它也解决了许多其他编译问题.请记住,这是黑客.
备份/usr/bin /,执行hack,编译打开cv并删除hack.
其他解决方案是升级到狮子(到目前为止)似乎没有32/64位问题.
有用的命令还有:
lipo -info /usr/local/lib/python2.6/site-packages/cv2.so
arch -i386 /usr/bin/python
Lipo检查共享对象和后者How do I force Python to be 32-bit on Snow Leopard and other 32-bit/64-bit questions的体系结构.也许您可以通过将python强制为与cv2相同的体系结构来解决此问题.
编辑
我注意到您正在使用macport cv2和apple python.运行代码时,尝试/opt/local/bin/python2.6.
内容总结
以上是互联网集市为您收集整理的python-OpenCv(Leopard)中的“ Mach-o,但结构错误”全部内容,希望文章能够帮你解决python-OpenCv(Leopard)中的“ Mach-o,但结构错误”所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。