我对C++编程和cmake非常陌生。如果这个问题看起来简单的话,请容忍我。
我正在构建一个应用程序,其中cmake 3.9.0是所需的最低版本。
Setup.sh: Building rpclib with libc++.
CMake Error at CMakeLists.txt:1 (cmake_minimum_required):
CMake 3.9.0 or higher is required. You are running version 3.5.1因此,我计划升级cmake版本,并遵循下面的链接。
注意:为了明确起见,我不想清除现有版本,因为它可能会影响我的系统中的ROS环境。
我已经完成了以下的安装和结果。
当我运行cmake -version时
kk@kk-Lenovo-ideapad-320-15ISK:~/cmake-3.9.0$ cmake -version
cmake version 3.5.1
CMake suite maintained and supported by Kitware (kitware.com/cmake).
kk@kk-Lenovo-ideapad-320-15ISK:~/cmake-3.9.0$ 当我运行/opt/cmake/bin/cmake -version时
kk@kk-Lenovo-ideapad-320-15ISK:~/cmake-3.9.0$ /opt/cmake/bin/cmake --version
cmake version 3.9.0
CMake suite maintained and supported by Kitware (kitware.com/cmake).
kk@kk-Lenovo-ideapad-320-15ISK:~/cmake-3.9.0$与以前一样,应用程序构建的问题/错误保持不变。
请您帮助我更新cmake或修复现有的版本问题。
谢谢
KK
发布于 2018-09-02 09:48:49
这听起来像是路径问题。您必须更改PATH变量,以便Setup.sh在早期版本之前找到您的cmake。在运行Setup.sh之前尝试以下操作
export PATH=/opt/cmake/bin:$PATH发布于 2020-07-16 03:36:53
@john的答案是正确的,但它可能会影响现有的ROS系统,因为将使用PATH-variable的第一个条目。因此,您需要再次将PATH“取消导出”到旧设置,以便与ROS系统一起保存。
假设您的脚本"setup.sh“是某种构建脚本,它确实使用cmake构建您的软件。
应该首先在脚本中保存当前的PATH变量,如下所示
ORIGINAL_PATH=${PATH}现在,如@john所提到的,导出新的PATH变量,如
export PATH=/opt/cmake/bin:${PATH}在运行setup.sh之后(同样假定构建脚本),您应该恢复旧的PATH-variable,这样构建脚本就不会更改用户全局设置。
export PATH=${ORIGINAL_PATH}https://stackoverflow.com/questions/52135635
复制相似问题