cc_library_static
时间: 2023-06-21 18:18:46 浏览: 35
`cc_library_static` 是 Bazel Build 工具的一个规则(rule),用于构建静态库。它在编译时将源代码编译成静态库(`.a` 文件),并将其存储在指定位置,以便其他规则可以链接该库。使用静态库可以将代码打包成单独的可执行文件,而不需要依赖动态链接库。
使用 `cc_library_static` 规则时,需要指定以下参数:
- `name`: 静态库的名称。
- `srcs`: 需要编译的源代码文件。
- `copts`: 编译选项。
- `linkopts`: 链接选项。
- `visibility`: 可见性设置,用于控制哪些规则可以访问该库。
示例:
```
cc_library_static(
name = "my_static_lib",
srcs = ["my_source_file.cc"],
copts = ["-Wall", "-Werror"],
linkopts = ["-static-libstdc++", "-static-libgcc"],
visibility = ["//visibility:public"],
)
```
相关问题
cc_library_static { name: "libvold", defaults: [ "vold_default_flags", "vold_default_libs", ],
这段代码是 Bazel Build 工具的一个规则(rule),用于构建静态库 `libvold`。它包含了两个默认属性 `vold_default_flags` 和 `vold_default_libs`。
`vold_default_flags` 是一个 Bazel 的配置文件,定义了一些编译选项,例如 `-Wall` 和 `-Werror` 等选项。
`vold_default_libs` 是一个链接库的列表,用于告诉编译器需要链接哪些库。这些库可以是其他的静态库或动态库,例如 `liblog` 和 `libbase`。
在使用 `cc_library_static` 规则时,可以通过 `defaults` 属性指定默认属性。这些默认属性可以是其他规则定义的属性,也可以是 Bazel 的配置文件中定义的属性。
示例:
```
cc_library_static(
name = "my_static_lib",
srcs = ["my_source_file.cc"],
defaults = ["my_default_flags", "my_default_libs"],
visibility = ["//visibility:public"],
)
```
STATIC_LIBS
STATIC_LIBS是一个编译时所依赖的静态库列表。在Android NDK中,可以使用cc_library_shared来编译动态库,使用cc_binary来编译可执行文件。在cc_library_shared或cc_binary的配置中,可以通过static_libs参数来指定所依赖的静态库。这些静态库将会被链接到最终的可执行文件或动态库中,以提供所需的功能和符号。\[3\]
#### 引用[.reference_title]
- *1* [【Android】编译系统之 make 和 Soong](https://blog.csdn.net/yang553566463/article/details/126603493)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* [Android 静态库互相依赖问题](https://blog.csdn.net/weixin_40437029/article/details/107713761)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item]
- *3* [Android.bp文件简介](https://blog.csdn.net/qq_29890089/article/details/121124416)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)