如何设置 CMAKE_TOOLCHAIN_FILE(vcpkg) 而不将其放入 VScode 的 CMakeLists.txt 中?

Posted

技术标签:

【中文标题】如何设置 CMAKE_TOOLCHAIN_FILE(vcpkg) 而不将其放入 VScode 的 CMakeLists.txt 中?【英文标题】:How to set CMAKE_TOOLCHAIN_FILE(vcpkg) without put it in CMakeLists.txt in VScode? 【发布时间】:2021-07-15 03:38:23 【问题描述】:

我想在我的小组项目中使用 vcpkg,我们为它设置了 CI/CD(github action)。由于这个原因,我不能直接在 CMakeLists.txt 中设置 CMAKE_TOOLCHAIN_FILE ,因为它的路径对于其他人来说是不同的。那么如何在VScode中设置CMAKE_TOOLCHAIN_FILE呢?

【问题讨论】:

【参考方案1】:

只需将其作为命令行参数传递!

cmake .. -DCMAKE_TOOLCHAIN_FILE=path/to/vcpkg.cmake

如果您使用 VSCode 的 CMake 扩展,您可以将参数添加到 CMake Configure Args 配置条目中。

【讨论】:

运行命令cmake .. "-DCMAKE_TOOLCHAIN_FILE=/home/xxx/vcpkg/scripts/buildsystems/vcpkg.cmake" 我得到以下错误:Could not find a package configuration file provided by "Drogon" with any of the following names: 但我已经安装了它sudo vcpkg install Drogon Computing installation plan... The following packages are already installed: drogon[core,ctl]:x64-linux -> 1.7.1 Package drogon:x64-linux is already installed 指定工具链文件时必须重新创建构建目录

以上是关于如何设置 CMAKE_TOOLCHAIN_FILE(vcpkg) 而不将其放入 VScode 的 CMakeLists.txt 中?的主要内容,如果未能解决你的问题,请参考以下文章

NDK 编译 Boringssl

cmake交叉编译参数toolchain

CMake基础教程(36)Linux交叉编译

海思平台配置toolchain.cmake

[Tools] [cmake] 调试笔记 --- cmake缓存引起的一个错误

android如何设置网络优先