【问题标题】:CMake looking for Qt libraries in the wrong path on UbuntuCMake 在 Ubuntu 上寻找错误路径中的 Qt 库
【发布时间】:2013-01-21 01:55:38
【问题描述】:

ubuntu 上的 CMake 给我以下错误

CMake Error at blah/CMakeLists.txt:19 (ADD_LIBRARY)
Cannot find source file:
    /usr/lib/libQtGui.so

CMakeLists.txt 的相关部分是这个

FIND_PACKAGE (Qt4 REQUIRED)
INCLUDE(${QT_USE_FILE})
INCLUDE_DIRECTORIES (${QT_INCLUDES})
QT4_WRAP_CPP (QT_SRCS ${HEADERS})
ADD_LIBRARY (blah ${CPP} ${QT_SRCS} ${QT_LIBRARIES})

一项小调查显示 libQtGui.so 及其朋友住在/usr/lib/i386-linux-gnu(即correct),而不是 CMake 认为的/usr/lib

这个构建环境几个月前运行良好。没有更改源文件或配置文件,但软件包已定期更新。

发生了什么变化?我该如何解决这个问题?

【问题讨论】:

  • 首先,您不应该将${QT_LIBRARIES} 放入源文件列表中。此变量设计用于target_link_libraries(blah ${QT_LIBRARIES})。如果你这样使用,问题是否仍然存在?

标签: linux ubuntu cmake


【解决方案1】:

正如this question 的回答中所述,问题在于 Ubuntu 12.04 将库安装到非标准路径。

解决办法是

export LIBRARY_PATH=/usr/lib/i386-linux-gnu/
export C_INCLUDE_PATH=/usr/include/i386-linux-gnu
export CPLUS_INCLUDE_PATH=/usr/include/i386-linux-gnu

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多