C++ 在介子中,我可以避免不断地从源代码跳到构建目录再跳回来吗?
要在介子中执行源代码外构建,请执行以下操作:C++ 在介子中,我可以避免不断地从源代码跳到构建目录再跳回来吗?,c++,build,cmake,meson-build,out-of-source,C++,Build,Cmake,Meson Build,Out Of Source,要在介子中执行源代码外构建,请执行以下操作: cd /path/to/source/ mkdir ../builddir 然后: 可以这样做吗(从builddir): 也就是说,避免从源代码跳到构建目录再跳回来 对于CMake,这是默认值。一旦您运行了meson来创建构建目录(它可以自动创建),就不需要每次更改meson.build时都运行它。当您运行ninja时,介子构建配置本身取决于源中的更改 要在构建目录以外的其他位置运行ninja,您可以使用-C选项(从ninja-h): -C DIR
cd /path/to/source/
mkdir ../builddir
然后:
可以这样做吗(从builddir
):
也就是说,避免从源代码跳到构建目录再跳回来
对于CMake,这是默认值。一旦您运行了
meson
来创建构建目录(它可以自动创建),就不需要每次更改meson.build时都运行它。当您运行ninja
时,介子构建配置本身取决于源中的更改
要在构建目录以外的其他位置运行ninja
,您可以使用-C
选项(从ninja-h
):
-C DIR在执行任何其他操作之前更改为DIR
根据您的示例,它将是:
$ cd /path/to/source/
$ meson ../builddir
$ ninja -C ../builddir
你的意思是,如果我向我的项目中添加一个新文件,并更新
介子.build
文件,我就不需要再次启动介子了吗?@Pietro是的,如果有必要,在介子生成的项目中运行忍者
,将更新忍者
(来自介子.build
)的构建文件。我真的不确定其他的后端。。
meson --pathToSource ../source // pseudocode
ninja
$ cd /path/to/source/
$ meson ../builddir
$ ninja -C ../builddir