嵌入Python:没有名为site的模块

时间:2014-11-24 11:48:15

标签: python c python-2.7 importerror embedding

我将python嵌入到C应用程序中。我已经下载了标准的python dist并将其放在相对于程序的位置并用它来链接&构建C应用程序。

这在我的开发机器上工作正常,应用程序运行此版本的python。

当我捆绑应用程序和python发行版并部署它时,我收到以下错误:

ImportError: No module named site

可以通过将PYTHONHOME设置为此地址'的路径来解决此问题。 python发布,但我不想搞乱用户可能已经拥有的任何python安装,所以宁愿不设置这个变量。

任何想法如何正确捆绑python解释器& lib没有干扰可能已经在目标机器上的任何可能的python版本?

1 个答案:

答案 0 :(得分:3)

添加

Py_SetPythonHome(pathToPython);
Py_Initialize致电之前

pathToPython应该是python发布的路径,对于Windows,它是包含LibDLLs文件夹的文件夹。