我正在编写一段代码,它从C/C++应用程序运行Python函数.为了做到这一点,我设置PYTHONPATH并运行初始化如下:
Py_SetPythonHome("../Python27");
Py_InitializeEx(0);
Run Code Online (Sandbox Code Playgroud)
然后我导入我的模块并运行我的功能.它很棒.
我现在正在尝试为同事构建一个安装程序来运行我的代码.我想最大限度地减少我需要在此安装程序中包含的文件数量,原因很明显.
谷歌搜索主题告诉我,我应该能够包含文件"Python27.lib"和"Python27.dll",然后压缩"DLLs"和"Lib"文件夹并包含它们.但是,当我尝试这个时,Py_Initialize失败了.
快速检查导致此失败的原因表明Py_Initialize似乎依赖于Lib文件夹中的许多.pyc文件,包括(但不限于warnings.pyc,_abcoll.pyc,_future_.pyc和"编码"的内容) "文件夹.
我不明白为什么会这样.有什么建议?