导致Python“解释器未初始化(版本不匹配?)”错误的原因是什么?

6 投票
1 回答
3840 浏览
提问于 2025-04-16 09:18

我这周已经花了整整三天时间在尝试让OpenCV和Python一起工作了。(其实我已经断断续续尝试了六个月)。

我遇到了这个错误:

Python 2.7.1 (r271:86882M, Nov 30 2010, 10:35:34) 
[GCC 4.2.1 (Apple Inc. build 5664)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
dlopen("/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload/readline.so", 2);
import readline # dynamically loaded from /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload/readline.so
>>> import cv
dlopen("./cv.so", 2);
Fatal Python error: Interpreter not initialized (version mismatch?)

然后程序就崩溃了(出现核心转储)。用 python -v 命令在 dlopen 后面什么也没有显示。

有没有人能给我一些关于这个错误的建议?

1 个回答

3

每次我尝试在OS X上编译OpenCV时,它都会声称找到了我自定义安装的Python,但实际上却链接到了系统自带的Python(2.6)。

这里发生的事情是,如果你查看OpenCV的完整编译输出,你会发现它实际上链接到了2.6,这样的话在你的自定义2.7上就无法使用了。

如果你能找到让OpenCV正确链接到用户提供的Python的方法,请:

撰写回答