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