加入收藏 | 设为首页 | 会员中心 | 我要投稿 晋中站长网 (https://www.0354zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

linux中怎样编译动态库,Linux中编译动态库

发布时间:2023-01-08 13:01:23 所属栏目:Linux 来源:互联网
导读: 类似Windows系统中的动态链接库,Linux中也有相应的共享库用以支持代码的复用。Windows中为*.dll,而Linux中为*.so,我来详细的告诉你如何在linux 下编写动态库,以及如何使用它.
在linux下

类似Windows系统中的动态链接库,Linux中也有相应的共享库用以支持代码的复用。Windows中为*.dll,而Linux中为*.so,我来详细的告诉你如何在linux 下编写动态库,以及如何使用它.

在linux下编写动态链接库的步骤:

1. 编写库的头文件和源文件.

2. 把所有涉及到的源文件用如下方式编译为目标文件:

g++/gcc -g -c -fPIC -o library1.o library1.cpp

g++/gcc -g -c -fPIC -o library2.o library2.cpp

......

......

(注释:-fPIC指通过这个选项来生成与位置无关的代码,可以在任何地址被连接和装载,-c指只编译而不连接原程序)

3. 把所有的目标文件链接为动态库:

g++/gcc -g -shared -Wl,-soname,lib***.so -o lib***.so.1.0.0 library1.o library2.o .... -lc

(注释:-lc选项,表示使用c语言库linux动态库,一般都要用到)

4. 建立一个库名链接

ln -s lib***.so.1.0.0 lib***.so

(编辑:晋中站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!