要使用Bazel构建不链接依赖的.so文件,可以使用cc_library规则的linkshared属性。下面是一个示例解决方法的代码示例:
cc_library(
name = "my_lib",
srcs = ["my_lib.cc"],
hdrs = ["my_lib.h"],
linkshared = 1,
deps = ["@my_dependency//:my_dependency"],
)
上述代码中,linkshared属性设置为1,表示将创建一个不链接依赖的共享库。deps属性指定了需要链接的依赖库。根据实际情况,你需要将@my_dependency//:my_dependency替换为你的实际依赖库。
在上述示例中,my_lib.cc和my_lib.h是你自己的源代码和头文件,my_dependency是你的依赖库。通过设置linkshared属性为1,Bazel将只链接my_lib自己的对象文件,而不链接my_dependency。
使用上述方法,你可以构建不链接依赖的.so文件。