我正在使用Debian操作系统,我试图指向cmake,我的Qt4在哪里。
我尝试构buildqjson库和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!
我不熟悉CMake和Qtconfiguration,但是我很好奇为什么设置强制CMake FIND_PACKAGE查看qmake的“/ usr / lib / x86_64-linux-gnu / qt4 / bin / qmake”。 我已经从源代码安装Qt 4.8.5,我有完全不同的目录中的Qt4 bin文件夹。
只是尝试“sudo apt-get install qt-sdk”它适用于我
根据我的经验,通过将包含qmake的文件夹放入PATH环境变量中可以很容易地解决这个问题。
我解决了我的问题。
用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库目录。 然后我可以看到qtchooser -print-env
显示QTTOOLDIR
和QTLIBDIR
到我的Qt。
然后我可以很容易地用CMake建立qjson库,Qt4被发现正确。
这是答案
https://askubuntu.com/questions/540746/ubuntu-14-04-qt5-development-libraries/540757#540757
似乎
apt-file search Qt5CoreConfig.cmake
是我所缺少的。 这让我:
qtbase5-dev: /usr/lib/x86_64-linux-gnu/cmake/Qt5Core/Qt5CoreConfig.cmake
安装似乎导致CMake找到Qt5。 qmake
仍然直接调用时报告相同的问题,虽然…一些剩余的qt4仍然安装它似乎…
至于qmake
问题,这是通过以下方法解决的:
sudo apt-get install qt5-default
最简单的解决方案是在宝石预期找到它的目录中添加一个链接。 在Ubuntu 14.04上,qmake位于/ usr / bin中。 解决方案简单
在我的情况下,这只是qtchooser缺少“默认”配置。 我想cmake只是执行qtchooser并寻找一个“默认”的配置文件名。 您可以通过执行以下操作来安装任何配置文件:
qtchooser -install <arbitrary_name> <path_to_qmake>
在我的情况下,我只是提供“默认”作为任意名称…这在适当的位置创建了default.conf文件,一切都很好。 我不认为你有多少个有名的qt版本是有限制的。 如果你以root身份执行此操作,它应该适用于所有用户。
在我的旧RHEL发行版上,这对我来说是这样的:
sudo yum install qt-devel.x86_64
只是qt基地一个不会与cmake工作。