我已经在命令行中尝试了--dynamic_mode=fully
的各种组合,并在linkstatic = 0
和cc_library
规则中尝试了cc_binary
,但没有设法避免在构建Bazel项目时构建静态库(.a
)。虽然二进制文件确实是动态链接的,但.a
文件仍然是构建的,占用了大量的时间和空间(在共享缓存上)。
我错过了什么吗?
答案 0 :(得分:2)
回答我自己的问题:似乎问题是通配符build //...
。它会触发两个每个cc_library
规则的静态库和动态库的链接。如果您将tags = ["manual"]
添加到库中,并使用--dynamic_mode=fully
进行构建,则静态.a
库将不再自动构建,但.so
仍将依据{cc_binary
创建。 {1}}目标。