簡體   English   中英

如何在 CMake Visual Studio 2022 中設置工作目錄?

[英]How to set working directory in CMake Visual Studio 2022?

我在使用 CMake (Visual Studio 2022) 設置工作目錄時遇到問題。

我目前正在開發一個項目(一些 OpenGL 學習資料),並決定從典型的 VS 解決方案項目切換到 CMake 項目。 我需要從Resources文件夾(LearnOpenGL/Resources)加載一些文件(.obj,着色器),但我看到 c++ 代碼中的路徑與LearnOpenGL/out/build/x64-Debug/ 無關

我已經嘗試過:

  • 設置屬性 VS_DEBUGGER_WORKING_DIRECTORY 像(也沒有斜杠):
set_property(TARGET LearnOpenGL PROPERTY VS_DEBUGGER_WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}/")
  • 將“currentDir”或“cwd”添加到CMakeSettings.json ,如:
"currentDir": "${projectDir}"
"cwd": "${projectDir}"

但這些變化沒有任何影響。 有沒有人有一些想法我還能做什么? 或者也許我在這里做錯了什么?

您可以將currentDir屬性添加到您的launch.vs.json ,該屬性通常位於${workspaceRoot}/.vs目錄中。

要從 Visual Studio 2022 CMake 項目訪問它,您可以按照以下步驟操作:

在解決方案資源管理器中單擊在解決方案和可用視圖之間切換按鈕:

在此處輸入圖像描述

然后點擊CMake 目標視圖在此處輸入圖像描述

現在右鍵單擊您的項目,然后在上下文菜單中按添加調試配置

在此處輸入圖像描述

這將打開launch.vs.json文件,您可以在其中編輯currentDir屬性,例如 - 我的項目02_texture.exe應該在根目錄中啟動,因此我的啟動配置如下所示:

{
  "version": "0.2.1",
  "defaults": {},
  "configurations": [
    {
      "type": "default",
      "project": "CMakeLists.txt",
      "projectTarget": "",
      "name": "CMakeLists.txt"
    },
    {
      "type": "default",
      "project": "CMakeLists.txt",
      "projectTarget": "02_texture.exe (02_texture\\02_texture.exe)",
      "name": "02_texture.exe (02_texture\\02_texture.exe)",
      "currentDir": "${workspaceRoot}"
    }
  ]
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM