0

我为我的库创建了一个柯南包,并注意到我需要requires为库和包配方复制列表。我想知道是否有更好的方法来做到这一点。

我正在为现有库构建柯南包。假设我有 libA 和 libB - 这取决于 libA。那是为了构建 libB,我需要构建并“安装”libA。所以我有 libA 的工匠柯南包,它是构建和安装的,因为它没有其他依赖项。我现在可以通过在 conanfile.txt 中指定 libB 依赖于 libA 来使用柯南构建 libB。但是当我为 libB 开发包时,我必须requiresconanfile.py.

cat libB/conanfile.txt
[requires]
libA/1@user/stable
...

cat conan-libsB/conanfile.py 
...
class LibBConan(ConanFile):
...
requires = "libA/1@user/stable"
...
def build(self):
    cmake = CMake(self, parallel=True)
    cmake.configure(source_folder=self.name)
    cmake.build()
    cmake.test()
    cmake.install()

以上是真实库https://github.com/abbyssoul/conan-libstyxe/blob/master/conanfile.pyhttps://github.com/abbyssoul/libstyxe/blob/master/conanfile 的简化版本。文本

柯南是否有可能弄清楚如果源包包含conanfile.[txt|py]然后这个定义requires字段。

如果需要工具来获取包build_requires,则应使用该工具。

4

0 回答 0