linux下常用调试技巧

news/2024/11/28 8:35:11/

1 linux下如何查看静态库和动态库都链接了那些库

1.1 静态库.a是没有指令可以看到其在生成过程中链接了那些库的

1.2 动态库.so可以通过ldd指令查看其在生成过程中链接了那些库

在这里插入图片描述

还有一种简单直观的方法,我们可以在编译过程中看到所生成的二进制文件,链接了那些库:
平时编译我们基本都是cmake …,这样
cmake -D CMAKE_VERBOSE_MAKEFILE=1
这样可以看到链接库的信息,链接了什么库就可以一眼看到

2 通过egrep指令查看库中是否定义某个函数

别人给我们的三方库.so文件,如果在链接的时候报错,函数未定义的错误【这个函数本该是在这个库中实现的】
我们可以采用如下指令查看这个库中是否实现了这个函数
在这里插入图片描述
在这里插入图片描述
该方法对于静态库和动态库都是适用的

3 通过file和readelf指令查看二进制文件的架构类型(x86架构编译还是arm架构编译)

对于二进制文件或者动态库.so文件可以直接用file指令查看


http://www.ppmy.cn/news/9355.html

相关文章

C++静态变量的使用训练

李太白年龄:80 加入列表后,最小的年龄现在是:80赵四天年龄:70 加入列表后,最小的年龄现在是:70王天霸年龄:90 加入列表后,最小的年龄现在是:70毛强年龄:20 加入列表后,最小的年龄现在是:20周瑜年龄:30 加入列表后,最小的年龄现在是:20万茜年龄:40 加入列表后,最小的年龄现在是:…

【 java 集合】List接口常用实现类对比以及ArrayList和LinkedList源码分析

📋 个人简介 💖 作者简介:大家好,我是阿牛,全栈领域优质创作者。😜📝 个人主页:馆主阿牛🔥🎉 支持我:点赞👍收藏⭐️留言&#x1f4d…

【机器学习】线性回归损失函数为什么要用平方形式

问题 线性回归损失函数为什么要用平方形式? 问题背景 这是在阿里一面中遇到的问题,当时我的回答是损失函数是是模型预测值与真实值之间的一种距离度量,我们可以计算出每个样本的预测值与真实值之间的距离,全部加起来就得到了所…

【MySQL】-【索引】

目录为什么使用索引InnoDB中索引的推演索引前的查找设计索引简单的索引设计方案InnoDB中的索引方案为什么使用索引 一、hashmap底层使用红黑树 二、索引时在存储引擎中实现的,因此不同存储引擎的索引可能不同 索引的优点: 类似大学图书馆建书目索引&am…

景联文科技:探究人工智能在智慧医疗中的应用及作用|数据标注

智慧医疗中的人工智能具有难以想象的潜力。人工智能在智慧医疗中的未来从通过协助重复性工作到药物管理或药物创造的治疗计划设计开始,人工智能已经在多个医学领域发挥作用。更好地组织智慧医疗物流智慧医疗和医学领域的人工智能可以更好地组织患者路线或治疗计划&a…

机器学习实战教程(九):支持向量机实战篇

一、前言 上篇文章讲解的是线性SVM的推导过程以及简化版SMO算法的代码实现。本篇文章将讲解SMO算法的优化方法以及非线性SVM。 本文出现的所有代码,均可在我的github上下载,欢迎Follow、Star:点击查看 二、SMO算法优化 在几百个点组成的小规…

扩展欧几里得算法 - exgcd

学exgcd的时候没好好听课,几乎每次遇到都忘记。 于是打算写篇博客。 扩展欧几里得算法,就是欧几里得算法的扩展。 欧几里得算法,就是 gcd,共产党 ,用来求最大公约数的。 还是一样,首先搞明白他是干啥的。…

到底为什么那么多大厂在开始疯狂裁员?

最近几年大家都听到了好多大厂公司开始裁员,比如鹅厂、狗厂、鸟厂、熊厂等。 接下来给大家讲个故事,希望故事看完,你就会懂了! 外国的神父呆了不久 留下几个 P 就走了, 一个 P 叫 BPR, 一个 P 叫 ERP。 …