Oft*_*nji 6 cmake visual-studio-2022
我在使用 CMake (Visual Studio 2022) 设置工作目录时遇到问题。
我目前正在开发一个项目(一些 OpenGL 学习内容),并决定从典型的 VS 解决方案项目切换到 CMake 项目。我需要从Resources文件夹 (LearnOpenGL/Resources) 加载一些文件(.obj、着色器),但我看到 C++ 代码中的路径相对于LearnOpenGL/out/build/x64-Debug/。
我已经尝试过了:
set_property(TARGET LearnOpenGL PROPERTY VS_DEBUGGER_WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}/")
Run Code Online (Sandbox Code Playgroud)
"currentDir": "${projectDir}"
Run Code Online (Sandbox Code Playgroud)
"cwd": "${projectDir}"
Run Code Online (Sandbox Code Playgroud)
但这些变化都没有任何影响。有人知道我还能做什么吗?或者也许我在这里做错了什么?
stj*_*ano 12
您可以将currentDir属性添加到launch.vs.json中,该属性通常位于${workspaceRoot}/.vs目录中。
要从 Visual Studio 2022 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}"
}
]
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3055 次 |
| 最近记录: |