C++ 如何在MSYS上访问windows环境变量?

C++ 如何在MSYS上访问windows环境变量?,c++,windows,visual-studio-2015,ffmpeg,msys,C++,Windows,Visual Studio 2015,Ffmpeg,Msys,我想从msys2通过vs2015构建ffmpeg 在第一个示例中,将vs2015\vc\bin\amd64添加到windows中的path环境中 以管理员身份运行“vs2015 x64命令提示符”,然后运行vcvarsall.bat amd64 在最后一步中,转到“msys”路径,然后运行“msys2_shell.cmd” 我使用“which cl”命令本地化cl.exe 输出: 其中:没有氯离子 (/usr/local/bin:/usr/bin:/bin:/opt/bin:/c/Windows

我想从msys2通过vs2015构建ffmpeg

在第一个示例中,将vs2015\vc\bin\amd64添加到windows中的path环境中

以管理员身份运行“vs2015 x64命令提示符”,然后运行vcvarsall.bat amd64

在最后一步中,转到“msys”路径,然后运行“msys2_shell.cmd”

我使用“which cl”命令本地化cl.exe

输出:

其中:没有氯离子 (/usr/local/bin:/usr/bin:/bin:/opt/bin:/c/Windows/System32:/c/Windows:/c/Windows/System32/Wbem:/c/Windows/System32/WindowsPowerShell/v1.0/)


如何在msys中访问windows环境?

遇到了同样的问题

原因:

PATH
环境变量未继承到msys2

解决方案:

不要单独运行
msys2_shell.cmd
,而是使用
-使用完整路径
参数运行它:


无法复制,尽管我只是先运行vs2015 x64命令提示符,然后运行msys2_shell,因为这样就足够了。实际上,不需要首先向路径添加一些内容,也不需要运行vcvarsall两次(vs命令提示只运行vsvarsall.bat)。当您在vs提示符下时,
echo%path%
的输出是什么,即它是否找到了cl?如果没有,vcvarsall就坏了,否则msys就坏了,因为它应该接管整个环境
 msys2_shell.cmd -use-full-path