Cmake,Ninja,BATS,建立在 windows - Clion 风格

Posted

技术标签:

【中文标题】Cmake,Ninja,BATS,建立在 windows - Clion 风格【英文标题】:Cmake, Ninja,BATS, build on windows - Clion style 【发布时间】:2021-12-08 13:10:05 【问题描述】:

所以我正在尝试自动化/集中构建我的应用程序。它们有很多,我真的无法在 IDE 之间切换来构建它们……所以是时候使用 BAT 了……哦,是的……我来自 Clion,它有点像迄今为止的戏剧性经历...

这是我现在的蝙蝠>

call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars64.bat"

pushd S:\path\to\src\CMakeLists

call "S:\path\to\cmake\cmake.exe" -DCMAKE_BUILD_TYPE=Debug -DCMAKE_MAKE_PROGRAM="S:\path\to\ninja\ninja.exe" -G Ninja S:\path\to\src\CMakeLists\codeCore\

:: "S:\path\to\cmake\cmake.exe" --build "S:\path\to\src\CMakeLists\build\debug" --target all

现在……我没有在构建它,因为它最终会出现在 > Error: could not load cache

无论如何。 他目前将 CmakeFiles 放置在错误的位置,我希望他放置在 build/debug 或 build/debugRelease 中,那么如何控制该文件的放置? 他也在制作:

build.ninja
cmake_install.cmake
CMakeCache.txt

我要么不想要,要么更愿意将它们放在 cmakeFiles 其余部分旁边的 build/debug 文件夹中...... 我需要传递什么命令/在哪里指定文件夹位置? Clion 通常把所有东西都整齐地放在我在设置中指定的位置......而且他没有打印出他用来执行此操作的确切命令,所以我必须......把它变魔术。

有什么想法吗? TIA

【问题讨论】:

【参考方案1】:

发布后 10 秒我自然就明白了... 所以我的工作目录...如果我进入pushd S:\path\to\src\CMakeLists\build\debug

然后一切都在正确的地方!

所以对于任何需要它的其他人...确保您的工作目录是构建/输出目录。

【讨论】:

以上是关于Cmake,Ninja,BATS,建立在 windows - Clion 风格的主要内容,如果未能解决你的问题,请参考以下文章

C++学习(四四二)cmake ninja build.ninja rules.ninja

获取 CMake 的 Ninja 测试命令

使用 CMake、Clang 和 Ninja 在 Windows 上构建 c++ 项目

CMake/Ninja 试图编译已删除的“.cpp”文件

CMake / Ninja:当内容未知时递归“清理”输出目录......?

CMake 找不到 Ninja