如何使用CMake在Visual Studio 2017 RC1中设置环境变量?

jth*_*jth 5 cmake environment-variables visual-c++ visual-studio-2017

我正在使用Visual Studio 2017 RC1新的"打开文件夹"功能加载CMake项目(C++)并尝试在启动时为二进制文件设置环境变量.

由于在使用Open Folder时没有解决方案文件,因此VS-2017之前使用调试对话框的方式似乎不是一个选项.

到目前为止我尝试过的:

  • 使用一个简单的Hello World项目和一个源文件
  • 右键单击解决方案资源管理器中相应的C++文件,选择" 调试并启动设置 "
  • env: {}在那里添加,它应该给Hello World程序一个空的环境

Solution Explorer和launch.vs.json的屏幕截图

但是,如果我尝试运行二进制文件,弹出窗口会显示" 对象必须实现IConvertible "并且二进制文件不会运行.但是,省略时可以正常工作env: {}.我也尝试过添加东西,但效果保持不变.使用currentDir更改工作目录工作正常,所以我认为launch.vs.json至少是读取和使用.

由于这方面的文档似乎很少,我不确定这是否是使用VS 2017 CMake集成时设置环境变量的预期方法.

Kie*_*ong 2

为了使用 CMake 为 VS 2017 设置多个环境变量,请使用\u0000作为分隔符。例如,将这些放入您的launch.vs.json意愿中设置 2 个环境变量VAR1=USAVAR2=JAPAN

{
  "version": "0.2.1",
  "defaults": {},
  "configurations": [
    {
      "type": "default",
      "name": "main.cpp",
      "project": "src\\main.cpp",
      "env": "VAR1=USA\u0000VAR2=JAPAN" 
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)