在win10命令行(cmd)中添加临时环境变量

概述

想编译一个开源软件, 编译脚本是CMake的.

打开cmd, 在命令行中输入cmake, 说文件不存在. 就是说cmake不在永久环境变量PATH中.

用everything看了一下, 计算机中有好多cmake.

计算机上这么多要用CMake的程序, 谁也没将cmake的path加入永久PATH, 估计是怕cmake之间版本不同互相影响吧.

去下载了最新版的CMake(https://cmake.org/download/), 当前版本是3.24.1(cmake-3.24.1-windows-x86_64.msi)

安装完的路径是

C:\Program Files\CMake\bin

查资料, 大概知道怎么在cmd命令行加临时path变量了, 但是试了几次都不好使.

估计是cmd脚本的语法写的不对

* set var和变量值之间要有个=符号, 不能有空格(=在var和变量值之间没有空格)
* 附加添加的全路径名称不能用''或""包裹(即使是带空格的路径名称, 也不用管, 原样照印就好)
* 新添加的附加路径值后面不用带\字符 e.g. 应为d:\tmp 而不是 d:\tmp\

折腾了几次, 可以了.

在命令行中, 加入临时环境变量后, 可以调用CMake.

实验

打开新的cmd窗口, 输入cmake, 这时显示cmake不存在

C:\Users\me>cmake
'cmake' 不是内部或外部命令,也不是可运行的程序
或批处理文件。

运行set path, 可以看到C:\Program Files\CMake\bin 并不在PATH变量中

C:\Users\me>set path
Path=C:\Program Files\Potrace\;C:\Program Files\Java\jdk-17.0.4.1\bin;C:\Program Files\Common Files\Oracle\Java\javapath; ...
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.RB;.RBW

将刚装好的cmake路径加到path变量的最前面

set path=C:\Program Files\CMake\bin;%path%

这时再看看set path的结果

C:\Users\me>set path
Path=C:\Program Files\CMake\bin;C:\Program Files\Potrace\;C:\Program Files\Java\jdk-17.0.4.1\bin;C:\Program Files\Common Files\Oracle\Java\javapath;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;...
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.RB;.RBW

可以看到cmake安装后的bin目录已经在临时PATH变量的最前面了.

这时, 再运行cmake看看.

C:\Users\chenx>cmake --version
cmake version 3.24.1

CMake suite maintained and supported by Kitware (kitware.com/cmake).

可以看到, 将cmake安装后的bin目录加入临时path后, 可以找到cmake了.

最好将要附加的path放到临时path的最前面, 防止有同名的cmake程序的路径在path中.

END

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐