动态库、静态库、弱符号__attribute__((weak))与extern间有何关联?
- 内容介绍
- 文章标签
- 相关推荐
本文共计593个文字,预计阅读时间需要3分钟。
首先来说结论:
+✂️:动态库优先级排序,动态库的函数优先调用。
+✂️:如果同时存在静态库和动态库,优先使用静态库函数。
+✂️:如果只有两个或多个动态库,优先使用最先链接的动态库函数。
先说结论:
①:动态库优先级最差,如果同时有静态库和动态库,那么首先使用的是静态库函数。
②:如果只有两个或多个动态库,那么首先使用的是最开始链接的动态库函数;
③:弱符号函数在动态库中是起任何作用的
④:动态库是强函数,静态库是若符号函数,那么extern使用的就是若符号函数
下面举例说明:
Ⅰ:首先是本源文件中包含若函数,然后链接动态库的强符号函数。
本文共计593个文字,预计阅读时间需要3分钟。
首先来说结论:
+✂️:动态库优先级排序,动态库的函数优先调用。
+✂️:如果同时存在静态库和动态库,优先使用静态库函数。
+✂️:如果只有两个或多个动态库,优先使用最先链接的动态库函数。
先说结论:
①:动态库优先级最差,如果同时有静态库和动态库,那么首先使用的是静态库函数。
②:如果只有两个或多个动态库,那么首先使用的是最开始链接的动态库函数;
③:弱符号函数在动态库中是起任何作用的
④:动态库是强函数,静态库是若符号函数,那么extern使用的就是若符号函数
下面举例说明:
Ⅰ:首先是本源文件中包含若函数,然后链接动态库的强符号函数。

