首先,我从仓库中安装了cmake版本:
sudo apt-get install cmake
然后,我发现我需要的cmake功能不在旧版本中,因此我取消了cmake的安装:
sudo apt-get remove cmake
并从源代码安装:
wget http://www.cmake.org/files/v3.3/cmake-3.3.2.tar.gz
tar -xzf cmake-3.3.2.tar.gz
cd cmake-3.3.2/
./configure
make
sudo make install
现在,sudo cmake .
正确运行会生成一个makefile。
但是运行会cmake .
产生一个错误:
bash: /usr/bin/cmake: No such file or directory
重新安装存储库版本并比较以下输出:
cmake --version
sudo cmake --version
指示在sudo
调用时正在运行源版本,而在未运行时正在运行存储库版本。
这里发生了什么?
我检查了$PATH
包括/usr/local/bin
前 /usr/bin
,但我不知道还有什么地方看看。
bash
保留最近执行的文件及其位置的哈希表,因此不需要在PATH
每次调用命令时都进行搜索。
您可以通过看到当前保留的哈希值hash
。cmake
在那寻找。要清除哈希表并重新进行bash
搜索PATH
,请执行
hash -r
又见这个精彩讲解。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句