如何检查我是否正在使用两个不同版本的 cmake?

如何检查我是否正在使用两个不同版本的 cmake?

我在 Qt 方面遇到了一些问题,无法使用最新版本的cmake

我最近使用升级了版本apt-get

cmake --version
cmake version 3.2.2

但是 Qt 不知何故仍然使用 2.8,尽管这是不可能的。

我想我正在运行两个版本,所以我尝试了一下sudo apt-get purge cmake,然后重新安装它,这导致了我遇到同样的问题。

有没有什么方法可以测试我的机器上是否有两个版本的 cmake?如果有,我该如何删除旧版本?

这能解释这个问题吗:

dpkg --get-selections | grep cmake 
cmake                       install
cmake-data                  install
qtcreator-plugin-cmake:amd64            install
ros-indigo-cmake-modules            install

这是 2.8 版本。

locate cmake-2.8 | head
/usr/share/cmake-2.8
/usr/share/cmake-2.8/Modules
/usr/share/cmake-2.8/Templates
/usr/share/cmake-2.8/completions
/usr/share/cmake-2.8/editors
/usr/share/cmake-2.8/include
/usr/share/cmake-2.8/Modules/AddFileDependencies.cmake
/usr/share/cmake-2.8/Modules/AutomocInfo.cmake.in
/usr/share/cmake-2.8/Modules/BasicConfigVersion-AnyNewerVersion.cmake.in
/usr/share/cmake-2.8/Modules/BasicConfigVersion-ExactVersion.cmake.in

答案1

cmake --debug-output

将向您显示它正在使用的 cmake 在哪里。

答案2

我有一个小工具可以查找路径中给定名称的所有可执行文件。您可以使用它来查看路径中是否有多个 cmake。简单的代码是:

#!/usr/bin/tcsh

foreach dir ($path)
    if (-x $dir/$1) then
        echo "$dir/$1"
    endif
end

将以上内容保存在名为“every”的文件中,将其 chmod 为可执行文件。然后执行“./every cmake”。它应该列出路径中的所有 cmake 可执行文件。

相关内容