我可以要正确的qmake,但qt错了吗
Could I have the correct qmake, but the wrong qt?
我有一个用cmake编译的Qt5代码,没有任何问题。然后我决定尝试qmake,遇到了一个问题。
看起来qmake在某种程度上使用了Qt4而不是Qt5,尽管我认为它被配置为运行Qt5。该代码包含一些严格意义上的Qt5元素。这是我从终端得到的:
首先,我有Qt4和Qt5:
wave@wave-T61:~$ qtchooser -l
4
5
default
qt4-i386-linux-gnu
qt4-x86_64-linux-gnu
qt4
qt5-x86_64-linux-gnu
qt5
显示qmake版本:
wave@wave-T61:~$ qmake -v
QMake version 3.0
Using Qt version 5.4.2 in /usr/lib/x86_64-linux-gnu
我可以通过设置来回切换:
wave@wave-T61:~$ export QT_SELECT=qt4
wave@wave-T61:~$ qmake -v
QMake version 2.01a
Using Qt version 4.8.6 in /usr/lib/x86_64-linux-gnu
wave@wave-T61:~$ export QT_SELECT=qt5
wave@wave-T61:~$ qmake -v
QMake version 3.0
Using Qt version 5.4.2 in /usr/lib/x86_64-linux-gnu
然而,无论我设置的qmake版本如何,我都会得到Qt4的外观,这与我使用cmake得到的外观完全不同(看起来应该是这样)。
我做错了什么?
谢谢你的长篇大论。
编辑。
嗯,我有两个Qt5库源文件夹。。。cmake被配置为查看我安装Qt5-/opt/Qt/5.5/gcc_64/include/-的地方,这很好。但后来我安装了qmake和QCreator,突然间,又有了另一个,qmake正在寻找它——在/usr/include/x86_64-linux-gnu/qt5/中。
现在,我不明白为什么会这样,为什么第二组Qt5库能像Qt4一样工作。希望我能重定向qmake并使其可用。
编辑2。看来我运气不好,要回cmake了。来自Qt文档:
QT_INSTALL_PRIIX-为其构建qmake的QT版本所在的位置。这些内置属性不能以版本为前缀,因为它们没有版本控制,qmake的每个版本都有自己的内置值集。
要在QtCreator中构建qmake项目时选择特定的Qt版本,您需要按照QtCreater文档中的说明添加所需的Qt版
相关文章:
- #定义c-预处理器常量..我做错了什么
- 努力将整数转换为链表。不知道我在这里做错了什么
- 首要问题的答案让值班员搞错了
- 看起来is_nothrow_constructible_v()在MSVC中被破坏了,我错了吗
- .h 和.cpp文件分离时出错,但仅使用 .h 文件时没有错误.我做错了什么?
- 我的C++线程做错了什么?
- 如何正确使用 >=?(a+f()+c)>=0 错了吗?
- 谁能告诉我我用 getline 做错了什么 (cpp) 格式
- 没有输出的合并排序我做错了什么?
- 我正在尝试使用 while 循环从字符串中删除字母,直到没有字母。我在这里做错了什么?
- 在C++中使用 AKS 素数测试计算双胞胎素数 我做错了什么?
- 指针相关的UE4崩溃.我的指针哪里错了?
- 我一直试图弄清楚我在这个链表程序中做错了什么
- 我正在尝试学习如何在 c++ 中传递指针,但出现错误:没有用于调用"test"的匹配函数。我做错了什么?
- FFMPEG,C++,内存泄漏,我做错了什么?
- 我做错了什么?反向字符串 C++
- 使用CMake为Qt Creator设置ITK库,我做错了什么
- 我可以要正确的qmake,但qt错了吗
- QT SDL无法识别(有Qmake文件列出.我做错了吗?)
- 使用针对Win32的英特尔C++编译器编译Qt时出错,我做错了什么