静态库动态库和GDB调试

静态库使用:

 生成app文件--./app运行

 动态库的制作和使用:

 制作:生成绿色可执行文件

 把动态库拷贝到lib目录下

 

 指定库的目录库的名称

报错 :找不到动态库的文件

动态库加载的原理:

 动态库的依赖关系

 最后一个是动态载入器;

解决:在动态加载器加载的路径中添加动态库的绝对路径 

 1.配置LD_LIBRARY_PATH :先$获取之前的值,再拼接

 再 查看就有路径了

但是,重新打开一个终端,环境变量需要重新配置,临时;永久配置:系统级别配置、/用户级别配置;

用户级别的配置:

home目录下的bashrc 

 保存退出并使文件生效;

 

 系统级别:

 

 使生效;.和source同效

 修改文件列表:

 但是不能直接修改只能间接修改

 路径加入这个文件并更新;

最后一种方式:把动态库文件放入/lib/或者/user/lib/目录下 --》不建议使用,包含系统自带的库文件,可能会替代;

GDB

 

 

 

 

 

 

 vim中显示行号 

在编译时没有带-g : --可执行文件中没有加入源代码信息

 源代码文件被改名也找不到

 

 在GDB中查看list;

编译cpp文件使用g++; 

 查看其它文件; l 文件名:行号

查看对应文件后面需要加上行号;显示时候以行号为中心进行显示;

 

查看和设置一次查看多少行;

 断点

 

 

 

 

 info :i   break:b

 delete :d/del

 Enable :y/n  yes/no

 条件断点:

 

 

 退出gdb程序断点就没有了,再次进入需要重新设置断点;

使用start运行gdb程序,程序从第一行开始;main()函数

 程序停到下一个断点,但没有设置断点直接运行结束;

 程序没有断点使用run运行调试程序,直接运行结束;

 

 程序停在第一个断点处,断点处还没有执行

c继续到下一个断点;

 

 

 next:  直接一步一步执行不会进入函数体--输出调用结果;

 使用s 会进入函数体;

 跳出函数体

 设置自动变量;自动打印不需要每次都print; 

 

 设置变量的值;

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值