gpt4 book ai didi

java - Gradle:将 native 库与现有的外部库链接

转载 作者:行者123 更新时间:2023-12-03 05:49:50 24 4
gpt4 key购买 nike

我正在构建一个 API,以使用 swig 和 gradle 作为构建系统在 C、Puthon 和 JVM 之间创建桥梁。问题是,如果我想将 swig 生成的源代码链接到 python 头文件,我需要将这些头文件包含到构建中,但我找不到明确的方法来做到这一点。遗憾的是,gradle 目前缺乏原生构建的文档。

我从不同的来源组成了以下模型定义:

model {
repositories {
libs(PrebuiltLibraries) {
pythonHeaders {
headers.srcDirs "$pythonPath/include"
}

jdkHeaders{...}
}
}

components {
transport(NativeLibrarySpec) {
sources {
lib library: 'pythonHeaders'
c {
source {...}
exportedHeaders {...}
}
}
}

}

toolChains {...}
}

此定义适用于静态库,但不适用于共享库,因为 python36.lib不在链接器路径上。
PreabuiltLibrary接口(interface)有一个名为 binaries 的字段,但我看不到使用 DSL 添加到它的方法。是否有任何标准的修复方法或解决方法?

最佳答案

Alexander Volanis here 提供的答案似乎正在工作。在 Anaconda 中,静态库放在 libs Anaconda 根目录中的目录和 dll-s。

关于java - Gradle:将 native 库与现有的外部库链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48406234/

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