Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用嵌入python的pyqt构建windows可执行文件_Python_C_Pyqt - Fatal编程技术网

使用嵌入python的pyqt构建windows可执行文件

使用嵌入python的pyqt构建windows可执行文件,python,c,pyqt,Python,C,Pyqt,我正在尝试制作一个运行一些python代码的windows应用程序,或多或少类似于py2exe手工制作的程序。 我的应用程序应该在没有任何外部python依赖项(甚至解释器)的windows上运行 我已经测试过这个(main.cpp): 问题是,当我运行build.exe文件时,出现以下错误: Traceback (most recent call last): File "<string>", line 1, in <module> SystemError: dyn

我正在尝试制作一个运行一些python代码的windows应用程序,或多或少类似于py2exe手工制作的程序。 我的应用程序应该在没有任何外部python依赖项(甚至解释器)的windows上运行

我已经测试过这个(main.cpp):

问题是,当我运行build.exe文件时,出现以下错误:

Traceback (most recent call last):
  File "<string>", line 1, in <module>
SystemError: dynamic module not initialized properly
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
系统错误:动态模块未正确初始化
因此,我不知道使用.pyd文件需要进行何种初始化。 最后是我的问题:

  • 我做错了什么
  • 如果我需要某种额外的初始化,我该怎么做?为什么需要它?也许这是Qt绑定固有的东西
  • 我是否应该将另一个*pyd文件复制到应用程序的工作目录
  • 这种直接使用.pyd文件的方法可行吗?还是有更好的方法来制作我想要的应用程序

注意:我不想使用任何工具,如py2exe、cx_Freeze、pyinstaller等。我想自己构建应用程序。

我在PyQt的安装中看到还有一个
Qt.pyd
文件。也许您可以尝试将其添加到您的捆绑包中?好的,我目前正在使用linux,但稍后我会尝试,谢谢
#include <Python.h>

int main(int argc, char *argv[]) {
    Py_SetProgramName(argv[0]);  
    Py_Initialize();
    PyRun_SimpleString("import QtGui as gui\n"
            "\n"
            "app = gui.QApplication([])\n"
            "mw = gui.QMainWindow()\n"
            "mw.show()\n"
            "print \"Test\"\n"
            "app.exec_()");
    Py_Finalize();
    return 0;
}
Traceback (most recent call last):
  File "<string>", line 1, in <module>
SystemError: dynamic module not initialized properly