我无法构建Pythonqt

时间:2010-04-19 11:43:45

标签: python qt

是PythonQt:pythonqt.sourceforge.net。我正在使用PythonQt-1.1。 Qt版本4.6.2和Python 2.6.4.10。 Visual Studio 2008 来自指示:

cd PythonQtRoot  
vcvars32  
qmake  
nmake

在我输入qmake后,它生成了makefile,然后我输入了nmake,但它说“makefile(22):致命错误U1000:语法错误:')'在宏调用停止时丢失。”我在这里做错了什么?

提前致谢....

3 个答案:

答案 0 :(得分:0)

我记得在Win32上使用最新版本的Qt构建其他软件包时遇到了类似的问题。顺便说一句,我在cygwin下运行。经过大量的调试后,我发现'qmake'使用了错误的'mkspec'。帮助这种情况的一件事是强制使用正确的mkspec,如下所示:

导出QMAKESPEC = win32-msvc2008 要么 export QMAKESPEC = win32-msvc

要查找所有有效mkspec的列表,我查看了目录: C:\的Qt \ 4.6.0 \ mkspecs 要么 C:\ Qt的\ 2010.01 \ QT \ mkspecs

对于一个特定的软件包,我与系统上安装的其他工具有一些冲突,并且必须使用绝对路径编辑实际的mkspec文件以指向正确的工具,但听起来这不是你的问题。听起来你的生成与gmake兼容的Makefile而不是与nmake兼容的Makefile,所以这个修复应该有用。

- 格伦

答案 1 :(得分:0)

我的建议是将PythonQt项目作为与CMake完全相同的项目的一部分。

然后您只需要静态地将其构建为项目的一部分(从基础add_library中的CMakeLists.txt中删除共享,记住如果您希望它如此,则必须从其基础project(PythonQt)中移除CMakeLists.txt,然后将以下内容添加到正确的CMakeLists.txt基本文件中:

if( PYTHON_QT_SUPPORT )
    message(STATUS ":::: Including support for PythonQT Shell ::::")
    # Include Python directories
    find_package(PythonLibs REQUIRED)
    include_directories("${PYTHON_INCLUDE_DIR}")
    # Include PythonQt 
    include_directories(YOURPATHTOPYTHONQT/pythonqt/src)
    add_subdirectory(YOURPATHTOPYTHONQT/pythonqt)
endif(PYTHON_QT_SUPPORT)

答案 2 :(得分:0)

您是否确保更新构建文件夹中的Python / Qt版本,并在您的环境中包含您需要的所有内容?

在build \ python.prf中: 更新python版本

使用Visual Studio命令提示符并跳过vcvars32。

设置您的环境路径:

set PATH=E:\toolkits\Trolltech\Qt-4.8.6\Win_x64_6.1_v12_debug\lib;%PATH%
set PATH=E:\toolkits\Trolltech\Qt-4.8.6\Win_x64_6.1_v12_debug\bin;%PATH%
set PYTHON_PATH=E:\toolkits\Python\2.7.9\Win_x64_6.1_v12
set PYTHON_LIB=E:\toolkits\Python\2.7.9\Win_x64_6.1_v12\libs

在这些路径中,您应该可以使用:

  • 所有qt库(QtCore4.dll等)
  • 所有qt可执行文件(uic,moc等)
  • python26.dll,python.exe

我还必须更新其他.prf文件,以确保在调试dll上绑定时正确完成调试扩展。