我对linux非常陌生,我正在使用Ubuntu16.04LTS 64位。
我获得了一个开源代码,我需要用cmake编译它。这段代码需要QT4。
我下载了一个QT4.8.6开源文件,并手动编译了它们。(这是必要的,因为QT不再支持linux的预编译QT4 )。
我将"qmake“目录添加到PATH变量中。echo ${PATH}显示了这一点。
当我用CMAKE编译代码时,会出现以下错误:
/usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:148 (消息)上的CMake错误:无法找到Qt4 (缺失: QT_MOC_EXECUTABLE QT_RCC_EXECUTABLE QT_UIC_EXECUTABLE) (找到版本"4.8.6")调用堆栈(最近一次调用): /usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE) /usr/share/cmake-3.5/Modules/FindQt4.cmake:1333 (FIND_PACKAGE_HANDLE_STANDARD_ARGS) CMakeLists.txt:20 (FIND_PACKAGE)
帮助是非常感谢的。
发布于 2017-03-02 12:27:23
qmake二进制文件和其他二进制文件来查找Qt。不幸的是,Qt5和Qt4都有这些二进制文件,Ubuntu通过将Qt4安装到/usr/lib/x86_64-linux-gnu/qt4来解决这个问题。通过安装包Qt4:sudo apt install qt4-default,您可以使qt4-default:sudo apt install qt4-default成为默认的(在您的路径中),它将从qt4 4特定的文件夹创建符号链接(例如,从/usr/lib/.../qt4/bin/qmake到/usr/bin/qmake的qmake )。现在,qmake --version应该打印Using Qt version 4.8.7 in /usr/lib/x86_64-linux-gnu我认为解决问题的最简单方法是使用Ubuntu提供的Qt4(通过安装qt4-default),并删除定制的构建Qt4和路径修改。
https://stackoverflow.com/questions/42434566
复制相似问题