gcc编译成动态库_gcc动态库

2022-11-19 12:13:29 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

gcc常用编译选项:

选项

含义

-static

链接静态库,禁止使用动态库

-shared

进行动态库编译,链接动态库

-Ldir

在动态库的搜索路径中增加dir目录

-lname

链接静态库(libname.a)或动态库(libname.so)的库文件

-fPIC(或fpic)

生成使用相对地址无关的目标代码

方法一:

第一步:使用-shared参数生成动态库,gcc -shared -fPIC -o libtest.so test.c 然后把libtest.so复制到/usr/lib64/系统路径下

注意:生成的动态库的名字必须是lib 名字.so,之后可以直接使用-ltest来引用动态库。

第二步:编译main.c,使用libtest.so动态库,gcc -o main main.c -L/usr/lib64/ -ltest

方法二:

在编译main.c,并链接libtest.so的时候,直接指定使用当前目录下的libtest.so文件,

使用命令:gcc -o main main.c ./libtest.so

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

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/187545.html原文链接:https://javaforall.cn

0 人点赞