首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Kotlin本地cinterop def文件:如何消除绝对路径?

Kotlin本地cinterop def文件:如何消除绝对路径?
EN

Stack Overflow用户
提问于 2019-11-18 16:36:36
回答 1查看 905关注 0票数 1

当指定linkerOpts时,我们需要为-L选项设置绝对路径,但很容易中断。

在旧版本中,将linkerOpts设置为build.gradle可能有效,但在1.3.50中,它警告说cinterop不支持“- linker -选项/-linkerOpts/-lopt选项”。请将链接器选项添加到.def文件或二进制编译中。“生成do失败”时出现“未定义符号”错误。

我能做什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-11-19 11:26:24

该选项将被取消一次,因此在1.3.50发布后有意添加了警告。这里的动机是,人们应该更喜欢通过.def文件设置所有链接器选项,甚至是.def

但是,在这种情况下,构建不应该分开。您可以添加脚本内容,以使其更清楚-究竟是什么导致了错误?

UPD:在GH项目在评论中被分享之后,我想在这里添加一些细节。这个问题在文档这里中有描述,这个部分:

通常需要为使用本机库的二进制文件指定特定于目标的链接器选项。它可以使用二进制的linkerOpts属性来完成。

因此,在这种情况下,将选项添加到binaries部分而不是cinterops部分是正确的。最后,我和

代码语言:javascript
复制
binaries {
    all {
        linkerOpts = ['-L'+rootProject.projectDir+'/libs/NativeBase64/iOS/', '-lNativeBase64']
    }
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58919144

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档