手撕Linux系列之Linux下静态库和动态库的使用以及gdb调试

静态库

step1 :

主文件先生成目标文件,再把要作为静态库的文件生成目标文件
gcc -c xxx.c -o xxx.o

step2:

打包成静态库文件
ar crsv libxxx.a xxx.o
其中lib和.a为固定格式

step3:

移动到系统家目录下的lib即/usr/lib

step4:

连接时加上lxxx
例如:你的静态库文件名字为libadd.a
那就这样的格式
gcc 主文件.o -o test -ladd
其中-l为固定格式,再加上lib后面的字母即可

动态库

step1:

主文件先生成目标文件,再把要作为动态库的文件生成目标文件,注意加上-fpic
gcc -c xxx.c -o xxx.o -fpic

step2:

打包成动态文件
gcc -shared xx.o -o libxx.so

step3:

移到到/usr/lib

step4:

gcc 主文件.o -o test -lxx

例如:

 软连接进行更新动态库

首先在usr/lib中删除这个

sudo rm libxxx.so

其次软连接

sudo ln -s libxxx.so.o.1 libky.so

例如:

 然后

 

 这样方便回退版本

gdb调试

编译时要加上

不会就help xx,gdb对于写程序时很重要

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值