2017-04-08 34 views
2

我試圖在Visual Studio 2017中使用CMake,但它沒有找到Boost。我認爲這是正常的,但以前我會用CMake GUI來指定BOOST_ROOT。我在哪裏可以在Visual Studio 2017中指定位置,而無需自己編輯CMake文件(它們存儲在源代碼管理中,因此不應編輯)?如何在Visual Studio 2017中指定CMake的Boost位置

回答

3

如果您轉到CMake->更改CMake設置 - > CMakeLists.txt,將打開CMakeSettings.json。您應該看到這樣的事情:

{ 
    "configurations": [ 
     { 
      "name": "x86-Debug", 
      "generator": "Visual Studio 15 2017", 
      "configurationType": "Debug", 
      "buildRoot": "${env.LOCALAPPDATA}\\CMakeBuild\\${workspaceHash}\\build\\${name}", 
      "cmakeCommandArgs": "", 
      "buildCommandArgs": "\"-m -v:minimal\"." 
     }, 

您可以通過添加變量添加定製:

{ 
    "configurations": [ 
    { 
     "name": "x86-Debug", 
     "generator": "Visual Studio 15 2017", 
     "configurationType": "Debug", 
     "buildRoot": "${env.LOCALAPPDATA}\\CMakeBuild\\${workspaceHash}\\build\\${name}", 
     "cmakeCommandArgs": "", 
     "buildCommandArgs": "\"-m -v:minimal\".", 
     "variables": [ 
      { 
       "name": "BOOST_ROOT", 
       "value": "C:\\boost_1_63_0" 
      } 
     ] 
    }, 

當您保存該文件的Visual Studio會自動重新運行CMake的,或選擇CMake->生成緩存。

我不希望有每生成變量所以這似乎工作:

{ 
    "variables": [ 
     { 
      "name": "BOOST_ROOT", 
      "value": "C:\\boost_1_63_0" 
     } 
    ], 
    "configurations": [ 
     { 
      "name": "x86-Debug", 
      "generator": "Visual Studio 15 2017", 
      "configurationType": "Debug", 
      "buildRoot": "${env.LOCALAPPDATA}\\CMakeBuild\\${workspaceHash}\\build\\${name}", 
      "cmakeCommandArgs": "", 
      "buildCommandArgs": "\"-m -v:minimal\"." 
     }, 

在這裏看到更多的細節: https://blogs.msdn.microsoft.com/vcblog/2016/10/05/cmake-support-in-visual-studio/#configure-cmake

相關問題