CMake不知道Qt4 qmake在哪里

bLA*_*LAZ 23 linux qt cmake

我正在使用Debian OS,我试图指向cmake我的Qt4在哪里.

我尝试构建qjson库并使用其CMakeLists.txt:http://pastebin.com/fKNp0Qgy

我明白了:

Qt5 not found, searching for Qt4
qmake: could not exec '/usr/lib/x86_64-linux-gnu/qt4/bin/qmake': No such file or directory
CMake Error at /usr/share/cmake-2.8/Modules/FindQt4.cmake:1386 (message):
  Found unsuitable Qt version "" from NOTFOUND, this code requires Qt 4.x
Call Stack (most recent call first):
  CMakeLists.txt:55 (FIND_PACKAGE)


-- Configuring incomplete, errors occurred!
Run Code Online (Sandbox Code Playgroud)

我不熟悉CMake和Qt配置,但我很好奇是什么设置强制CMake FIND_PACKAGE来查看qmake的'/ usr/lib/x86_64-linux-gnu/qt4/bin/qmake'.我从源代码安装了Qt 4.8.5,并且在完全不同的目录中有Qt4 bin文件夹.

小智 21

试试"sudo apt-get install qt-sdk"它对我有用

  • 在Ubuntu 14.04上不是解决方案。 (2认同)
  • 2020 年测试:`apt-get install qt4-default` (2认同)
  • `qt-sdk` 包不再存在。我们应该安装“libqt4-dev”。 (2认同)

bLA*_*LAZ 9

我解决了我的问题.

使用grep命令查找QT_SELECT我发现QT_SELECT与/usr/lib/x86_64-linux-gnu/qt-default/qtchooser/default.conf文件有关.从"默认"文件名,我假设它被视为QT_SELECT.提供的其他配置qtchooser -l/usr/share/qtchooser//usr/lib/x86_64-linux-gnu/qtchooser目录中.

这样的配置文件有两条带路径的行.我只是更改了这些行,首先指向我的Qt bin目录,然后指向我的Qt lib目录.然后我可以看到那个qtchooser -print-env节目QTTOOLDIRQTLIBDIR我的Qt.

然后我可以用CMake轻松构建qjson库,找到了正确的Qt4.


Ste*_*ows 7

根据我的经验,通过将包含qmake的文件夹放在PATH环境变量中,可以最轻松地解决此问题.