微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

是否可以看到哪个目标目标传播了-lpthread标志?

如何解决是否可以看到哪个目标目标传播了-lpthread标志?

当使用带有Bazel的自定义工具链(Android arm64-v8a目标)构建TensorFlow时,即使Android构建不是必需的,最终共享库也依赖于libpthread.so。使用同名的虚拟库可以很好地运行该库。

由于我已经删除了TensorFlow存储库中所有lpthread/pthread出现的情况,因此我认为存在一些传播链接标志的外部依赖项。

是否可以通过某种方式跟踪哪个目标为Bazel添加了特定的链接标志?不幸的是,-s标志仅显示最终的链接命令。

解决方法

bazel query是用于此目的的工具。此命令将为您提供所有在其linkopts中带有-lpthread(或-pthread-Wl,-lpthread之类的替代拼写)的传递依赖项:

bazel query 'attr(linkopts,"pthread",deps(//my:target))'

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。