由于我在电脑上安装了Qt 4.8.4和Qt 5.1,所以我遇到了问题。
当只有问题4.8.4在场时,一切都很好。
当我添加Qt 5.1时,这个工作正常,但Qt 4.8.4给了我这些链接器错误:
Makefile:34: recipe for target 'debug' failed
c:/mingw/bin/../lib/gcc/mingw32/4.7.2/../../../../mingw32/bin/ld.exe: cannot find -lQtGuid
c:/mingw/bin/../lib/gcc/mingw32/4.7.2/../../../../mingw32/bin/ld.exe: cannot find -lQtCored
collect2.exe: error: ld returned 1 exit status
mingw32-make[1]: *** [debug/BuildSystemTest3.exe] Error 1
mingw32-make: *** [debug] Error 2
09:21:00: The process "C:MinGWbinmingw32-make.exe" exited with code 2.
Error while building/deploying project BuildSystemTest3 (kit: Desktop)
When executing step 'Make'
我可以在一个琐碎的测试项目(默认情况下由QtCreator创建的项目)上复制这个问题,使用这个专业文件:
QT += core gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TARGET = BuildSystemTest3
TEMPLATE = app
SOURCES += main.cpp mainwindow.cpp
HEADERS += mainwindow.h
两个Qt版本安装在两个独立的目录中:C:\Qt\4.8.4和C:\Qt\ Qt5.1.0
MinGW是到MinGW_4.6.2(对于Qt4)或MinGW_4.7.2(对于Q t5)的链路。
不同版本的Qt可以在同一台计算机上共存吗?怎样
我认为指向5.1安装的QTDIR
环境变量可能有问题。
您可以创建两个这样的批处理文件(可能需要添加qtcreator.exe的完整路径):
qtcreator484.bat:
set QTDIR=C:Qt4.8.4
start qtcreator.exe
qtcreator510.bat:
set QTDIR=C:Qt5.1.0
start qtcreator.exe
并将它们放在桌面上。然后始终通过所需配置的批处理文件启动QtCreator。
侧节点:当两个QtCreator实例同时启动时,有时会出现问题,例如第二个实例无法写入控制台。