• 8372阅读
  • 4回复

[提问]使用MinGW4.8静态编译链接Qt的时候出现“QT_PLUGIN_PATH”错误 [复制链接]

上一主题 下一主题
离线彩阳
 

只看楼主 倒序阅读 楼主  发表于: 2013-12-08
关键词: Qt5编译静态
本来想在Windows下顺水推舟式的静态编译的,不料出错了……
使用Qt5.2RC自带的MinGW构建,从SourceForge上下载了MinGW的一个组件msys提供bash构建环境,但是——





  1. cd qml/ && ( test -e Makefile || d:/QtSource/qtbase/bin/qmake.exe D:/QtSource/qt
  2. declarative/tools/qml/qml.pro -o Makefile ) && mingw32-make -f Makefile
  3. 'QT_PLUGIN_PATH' 不是内部或外部命令,也不是可运行的程序
  4. 或批处理文件。
  5. Project ERROR: Failed to parse qmlimportscanner output.
  6. makefile:96: recipe for target 'sub-qml-make_first' failed
  7. mingw32-make: *** [sub-qml-make_first] Error 3





查了qml.pro文件,发现内容是这样的:

  1. QT = qml core-private
  2. qtHaveModule(gui): QT += gui
  3. qtHaveModule(widgets): QT += widgets
  4. HEADERS += conf.h
  5. SOURCES += main.cpp
  6. RESOURCES += qml.qrc
  7. mac {
  8.     OTHER_FILES += Info.plist
  9.     QMAKE_INFO_PLIST = Info.plist
  10.     ICON = qml.icns
  11. }
  12. DEFINES += QT_QML_DEBUG_NO_WARNING
  13. load(qt_tool)
又跟了qt_tool.prf,跟了很久,都没有发现QT_PLUGIN_PATH这个符号。真是郁闷死我了。有没有高手给我一点儿提示?

/qtbase/bin/qmake.exe始终无法对该pro文件产生Makefile,真是烦死我了。

上海Qt开发联盟,热忱地欢迎你的加入!
离线彩阳

只看该作者 1楼 发表于: 2013-12-08
果然还是QML的问题啊,似乎QML和静态编译不兼容似的。
我是这么解决的,采用Qt5.2动态连接版的qmake生成了Makefile和Makefile.Release和Makefile.Debug,然后在用mingw32-make生成qml.exe的。
上海Qt开发联盟,热忱地欢迎你的加入!
离线yujincheng08

只看该作者 2楼 发表于: 2013-12-15
尝试在qml.pro加上
  1. CONFIG += no_import_scan



离线彩阳

只看该作者 3楼 发表于: 2013-12-15
回 2楼(yujincheng08) 的帖子
是不是发布的时候Qt团队没有添加上呢?
上海Qt开发联盟,热忱地欢迎你的加入!
离线yujincheng08

只看该作者 4楼 发表于: 2013-12-15
回 3楼(彩阳) 的帖子
不是。这样编译出来提示加载不了window插件。
在编译好的静态qt的bin里面用qmake (qml路径)/qml.pro -o Makefile 表示能生成正确makefile而且编译出来的qml.exe能正常使用。

貌似是qt+=qml的问题 原因不明
快速回复
限100 字节
 
上一个 下一个