gpt4 book ai didi

scons - 如何强制 Scons 输出(exe、obj、lib 和 dll)到特定的构建目录?

转载 作者:行者123 更新时间:2023-12-04 00:40:34 27 4
gpt4 key购买 nike

我一直在尝试让 scons 将 exe、obj、lib 和 dll 文件输出到特定的构建目录。

我的文件结构如下所示:

/projectdir
/build
/bin
/obj
/source
/subdirs
/..
SConstruct

基本上,我现在得到的是我的源目录被 obj 文件污染了。我宁愿将一切都集中在一个地方。

SConstruct 文件如下所示:
env.VariantDir('build', 'source', duplicate = 0)
env.Program('Hierarchy', source = ['source/sconstest.cpp', 'source/utils/IntUtil.cpp'])

最佳答案

我发现的最简单的方法是使用 2 个文件,一个 SConstruct 文件和一个单独的 SConscript。

在 SConstruct 中,您只需调用另一个文件并指定构建输出的目录:

# content SConstruct
SConscript('main.scons', variant_dir='build', duplicate=0)

然后在“main.scons”中,您完成构建的主要内容。您可以忘记此文件中的变体目录。
# content of main.scons
env = Environment()
env.Program('Hierarchy',
source = ['source/sconstest.cpp', 'source/utils/IntUtil.cpp'])

关于scons - 如何强制 Scons 输出(exe、obj、lib 和 dll)到特定的构建目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3720142/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com