我已经从cmake网站下载了cmake二进制文件。 由于我必须按照构建系统的要求将不同平台的cmake二进制文件保存在特定的文件夹中,因此我将“ bin”文件夹重命名为例如。 lin,win,mac等 在cmake 3.7版之前,这似乎工作正常。 从此版本开始,在重命名bin文件夹后调用cmake时出现以下错误。
$pwd
/home/neo/cmake/cmake-3.10.2-Linux-x86_64/lin86
$
$./cmake --version
CMake Error: Could not find CMAKE_ROOT !!!
CMake has most likely not been installed correctly.
Modules directory not found in
cmake version 3.10.2
CMake suite maintained and supported by Kitware (kitware.com/cmake).
如果我重命名回bin目录,则没有发现问题
../cmake-3.10.2-Linux-x86_64:$ls
doc/ lin86/ man/ share/
$ cd ..
$mv lin86 bin
../cmake-3.10.2-Linux-x86_64:$cd bin/
../bin:$./cmake --version
cmake version 3.10.2
CMake suite maintained and supported by Kitware (kitware.com/cmake).
../bin:$
我观察到,从3.7版开始,cmake引入了一个新的configure标志,用于指定bin目录名称-bindir = DIR 。
$./bootstrap --help
Usage: ./bootstrap [<options>...] [-- <cmake-options>...]
Options: [defaults in brackets after descriptions]
...
Directory and file names:
--prefix=PREFIX install files in tree rooted at PREFIX
[/usr/local]
--bindir=DIR install binaries in PREFIX/DIR
[bin]
--datadir=DIR install data files in PREFIX/DIR
[share/cmake-3.10]
--docdir=DIR install documentation files in PREFIX/DIR
[doc/cmake-3.10]
--mandir=DIR install man pages files in PREFIX/DIR/manN
[man]
--xdgdatadir=DIR install XDG specific files in PREFIX/DIR
[share]
$
因此,现在,如果我想对“ bin”目录使用任何其他名称,则需要在指定我所需的bin目录名称的同时配置和构建cmake。
是否可以使用任何环境变量或其他方法来修改从cmake网站下载的cmake二进制文件的bin目录名称。