【发布时间】:2014-04-25 07:50:31
【问题描述】:
我正在尝试编译从 Qt git 中提取的当前“稳定”版本。问题是当它尝试使用 uic(UI 编译器)时,我的路径变量会以某种方式被破坏,并且找不到路径上的 icu 库,但是如果我将库放在与 uic 相同的目录中,它可以工作,但这并不是真正的解决方案。
我的路径变量:
%CommonProgramFiles%\Microsoft Shared\Windows Live;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static;%systemroot%\System32\WindowsPowerShell\v1.0\;C:\Program Files\Microsoft\Web Platform Installer\;C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\;C:\Program Files (x86)\Windows Kits\8.0\Windows Performance Toolkit\;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;%systemroot%\System32\WindowsPowerShell\v1.0\;I:\miktex\miktex\bin;E:\Program Files\doxygen\bin;E:\Python27;E:\icu\lib;E:\strawberry\c\bin;E:\strawberry\perl\site\bin;E:\strawberry\perl\bin;E:\Program Files (x86)\Git\bin;
mingw32-make 的相关输出是
mingw32-make[3]: Entering directory 'e:/qt5/qtbase/src/widgets'
mingw32-make -f Makefile.Debug all
mingw32-make[4]: Entering directory 'e:/qt5/qtbase/src/widgets'
PATH=e:/qt5/qtbase/lib${PATH:+:$PATH} e:/qt5/qtbase/bin/uic.exe dialogs/qfiledialog.ui -o .uic/ui_qfiledialog.h
Makefile.Debug:2443: recipe for target '.uic/ui_qfiledialog.h' failed
mingw32-make[4]: Leaving directory 'e:/qt5/qtbase/src/widgets'
Makefile:38: recipe for target 'debug-all' failed
mingw32-make[3]: Leaving directory 'e:/qt5/qtbase/src/widgets'
Makefile:437: recipe for target 'sub-widgets-make_first' failed
mingw32-make[2]: Leaving directory 'e:/qt5/qtbase/src'
Makefile:41: recipe for target 'sub-src-make_first' failed
mingw32-make[1]: Leaving directory 'e:/qt5/qtbase'
Makefile:64: recipe for target 'module-qtbase-make_first' failed
关于PATH=e:/qt5/qtbase/lib${PATH:+:$PATH} 的部分在我看来非常可疑,遗憾的是我对makefile 和这种特殊语法知之甚少。
【问题讨论】:
-
是的,这条线看起来很奇怪。你从哪里得到你的 MinGW 副本?我只是使用 Qt 本身附带的副本(我相信来自sourceforge.net/projects/mingwbuilds/files/host-windows/…)运行它,然后我得到了这些:
mingw32-make[4]: Entering directory 'C:/Qt/git/5.x.y/qtbase/src/widgets' (set PATH=C:\Qt\git\5.x.y\qtbase\lib;%PATH:)=^)%) & C:\Qt\git\5.x.y\qtbase\bin\uic.exe dialogs\qfiledialog.ui -o .uic\ui_qfiledialog.h。另外,我使用的是 Windows 命令提示符,而不是 MSYS。 -
这个问题有什么解决办法吗?
标签: c++ qt makefile mingw qmake