我目前正在对Qt GUI进行编程,以远程控制ROS控制的机器人。在catkin_ws中使用flyway migrate
时,出现以下错误:
catkin_make
然后我尝试通过将CMake Error at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
Could not find a package configuration file provided by "Qt5" with any of
the following names:
Qt5Config.cmake
qt5-config.cmake
Add the installation prefix of "Qt5" to CMAKE_PREFIX_PATH or set "Qt5_DIR"
to a directory containing one of the above files. If "Qt5" provides a
separate development package or SDK, be sure it has been installed.
Call Stack (most recent call first):
gui/CMakeLists.txt:31 (find_package)
(包含Qt5Config.cmake)放入gui / CMakeLists.txt来解决错误,并得到一个新错误:
set(Qt5_DIR /home/user/Qt/5.12.0/gcc_64/lib/cmake/Qt5)
另一个CMake Error at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
Found package configuration file:
/home/user/Qt/5.12.0/gcc_64/lib/cmake/Qt5/Qt5Config.cmake
but it set Qt5_FOUND to FALSE so package "Qt5" is considered to be NOT
FOUND. Reason given by package:
The Qt5 package requires at least one component
Call Stack (most recent call first):
gui/CMakeLists.txt:33 (find_package)
中有一个Qt5Config.cmake,尽管将/usr/lib/x86_64-linux-gnu/cmake/Qt5
放入gui / CMakeLists.txt仅导致类似的错误(只是路径不同)。
我现在有点迷茫,也许有人可以指出我正确的方向?
如果有帮助,我正在使用Ubuntu 16.04。
答案 0 :(得分:0)
查找包并不仅仅是设置一个路径。
可以向Qt的文件夹添加路径在CMAKE_PREFIX_PATH
,以避免这样的:
export CMAKE_PREFIX_PATH=$CMAKE_PREFIX_PATH:/home/user/Qt/5.12.0/gcc_64
或者您可以使用apt-get这样为ROS安装qt二进制文件:
sudo apt-get install ros-kinetic-libqt-*