致命的Python错误:Py_Initialize()

时间:2017-03-26 08:28:33

标签: python compilation blender

我尝试编译Blender,请按照以下说明操作:https://wiki.blender.org/index.php/Dev:Doc/Building_Blender/Windows/msvc/CMake 我手动使用Cmake构建它,没有任何东西排除Python的东西。接下来,我建立了项目,并成功地建立了INSTALL。但是当我尝试调试Blender时,我收到错误:

Fatal Python error: Py_Initialize: unable to load the file system codec
blender.exe has triggered a breakpoint.

调试停止:

Py_Initialize();
{
    int i;
    PyObject *py_argv = PyList_New(argc);
    for (i = 0; i < argc; i++) {
        PyList_SET_ITEM(py_argv, i, PyC_UnicodeFromByte(argv[i]));
    }
    PySys_SetObject("argv", py_argv);
    Py_DECREF(py_argv);
}

我有Python 2.7,之前没有PYTHONPATH。当我安装3.5并设置可变的PYTHONPATH无变化时,同样的错误。如果我直接在Debug文件夹中启动blender.exe,同样的事情。但是,如果我从INSTALL路径启动blender.exe一切正常。如何解决这个问题呢?谢谢!

1 个答案:

答案 0 :(得分:0)

好的,我解决了!主要问题是兼容性Python的预编译肢体,它是由我们在机器上的SVN和本地Python提供的。 在我看来,它的主要内容是编译Blender:

1)按照此说明操作。 https://wiki.blender.org/index.php/Dev:Doc/Building_Blender/Windows/msvc/CMake

2)禁用防火墙。

3)从具有管理员权限的指令开始 ANY 应用程序(尤其是* .bat)。

4)我使用Cmake手动设置并将build文件夹(BlenderBuild)分别放到源文件夹中,禁用除Python之外的任何东西,并在“..BlenderBuild \ bin”文件夹中手动设置INSTALL文件夹。

5)确保在INSTALL路径中提供了哪个Python版本,并在您的计算机上安装相应的版本。如果您在使用Python之前可能遇到系统变量问题。在我的情况下,我删除旧的2.7版本并在“路径”变量中清除Python的路径,安装3.5.2150版本。而已。没有PYTHONPATH等。重新启动计算机。

6)在MSVC2013中打开Blender.sln并构建完整的解决方案,然后只构建INSTALL(之前我遇到了问题)。将blender项目设置为启动,然后启动调试(此处也是如此)。一切都应该没问题!)