gpt4 book ai didi

python - 静态库和 SCons 的传递依赖

转载 作者:太空狗 更新时间:2023-10-30 01:17:22 25 4
gpt4 key购买 nike

我在构建两个库并为它们测试程序时偶然发现了一个看似简单的问题。

问题:我有两个静态库,libA 和 libB,libB 依赖于 libA。我不想将所有使用 libB 的程序显式链接到 libA,我希望 SCons 看到如果程序链接到库 B,它也应该链接到库 A。

我构建了一个简单示例来说明这个问题。由于找不到合适的文件托管程序并且这是与编程相关的,因此我创建了一个小型 SVN 存储库:

svn checkout https://example-repository.googlecode.com/svn/trunk example-repository

或者您可以下载压缩包 here .

最佳答案

SCons 没有像您描述的那样内置支持表达可传递的库依赖关系,但它的表弟 Waf做。查看documentation对于 Waf 书中的“使用”功能。 Boost build system也有这个功能under a different name .如果您愿意编写一些 Python 代码,您也可以选择在 SCons 中自己实现。

您可以使用的一个技巧是能够将回调定义为构造变量(即,将通过 Python 函数调用扩展的字符串)。让该函数调用根据您在解析时计算的某种形式的依赖关系图(即通过 SConscripts 中的方法调用)计算您需要的库的传递列表,并且您不必为每个目标重复完整的库列表或环境。

关于python - 静态库和 SCons 的传递依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4887728/

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