我们编译可执行文件的时候,会链接各种依赖库, 但是怎么知道依赖库的版本正确呢?

下面有几种办法:

  1. ldd 这是比较差的,因为打印结果更与位置相关
  2. dpkg -l | grep libprotobuf 不过需要先通过dpkg 安装,这也是很好的依赖包管理工具
  3. ldconfig -v | grep libprotobuf 最强大的工具
ldconfig: Path `/usr/lib64' given more than once
/usr/X11R6/lib64:
/usr/X11R6/lib:
/usr/x86_64-suse-linux/lib:
/usr/local/lib:
libubsan.so.1 -> libubsan.so.1.0.0
libstdc++.so.6 -> libstdc++.so.6.0.25
libssp.so.0 -> libssp.so.0.0.0
libquadmath.so.0 -> libquadmath.so.0.0.0
libmpx.so.2 -> libmpx.so.2.0.1
libitm.so.1 -> libitm.so.1.0.0
libgomp.so.1 -> libgomp.so.1.0.0
libgcc_s.so.1 -> libgcc_s.so.1
libatomic.so.1 -> libatomic.so.1.2.0
libasan.so.5 -> libasan.so.5.0.0
libzlog.so.1 -> libzlog.so.1.2.9
libprotoc.so.21 -> libprotoc.so.21.0.0
libprotobuf.so.21 -> libprotobuf.so.21.0.0
libprotobuf-lite.so.21 -> libprotobuf-lite.so.21.0.0
libssl.so.1.1 -> libssl.so.1.1
libcrypto.so.1.1 -> libcrypto.so.1.1
libcares.so.2 -> libcares.so.2.3.0
libgrpcpp_channelz.so.1 -> libgrpcpp_channelz.so.1.24.3
libgrpc_unsecure.so.8 -> libgrpc_unsecure.so.8.0.0
libgrpc_cronet.so.8 -> libgrpc_cronet.so.8.0.0
libgrpc.so.8 -> libgrpc.so.8.0.0
libgrpc++_unsecure.so.1 -> libgrpc++_unsecure.so.1.24.3
libgrpc++_reflection.so.1 -> libgrpc++_reflection.so.1.24.3
libgrpc++_error_details.so.1 -> libgrpc++_error_details.so.1.24.3
libgrpc++.so.1 -> libgrpc++.so.1.24.3
libgpr.so.8 -> libgpr.so.8.0.0
libaddress_sorting.so.8 -> libaddress_sorting.so.8.0.0
libboost_thread.so.1.71.0 -> libboost_thread.so.1.71.0
libboost_system.so.1.71.0 -> libboost_system.so.1.71.0
libboost_regex.so.1.71.0 -> libboost_regex.so.1.71.0
libboost_filesystem.so.1.71.0 -> libboost_filesystem.so.1.71.0
libpython3.so -> libpython3.so
libpython3.8.so.1.0 -> libpython3.8.so.1.0
libffi.so.6 -> libffi.so.6.0.4
/usr/local/lib64:
libubsan.so.1 -> libubsan.so.1.0.0
libtsan.so.0 -> libtsan.so.0.0.0
libssp.so.0 -> libssp.so.0.0.0
libquadmath.so.0 -> libquadmath.so.0.0.0
libmpx.so.2 -> libmpx.so.2.0.1
liblsan.so.0 -> liblsan.so.0.0.0
libitm.so.1 -> libitm.so.1.0.0

linux 查看链接库的版本的更多相关文章

  1. Linux 静态链接库和动态连接库

    (0)文件夹 VMware 下安装Ubuntu的吐血经历 零基础学习Shell编程 Linux下的makefile的妙用 Linux调试神器 -- gdb 十分钟学会Python的基本类型 Linux ...

  2. ZeroMQ接口函数之 :zmq_version – 返回ZMQ链接库的版本

    ZeroMQ 官方地址 :http://api.zeromq.org/4-2:zmq_version zmq_version(3)          ØMQ Manual - ØMQ/4.1.0 Na ...

  3. Linux查看系统基本信息、版本信息等

    Linux下如何查看版本信息, 包括位数.版本信息以及CPU内核信息.CPU具体型号 1.uname -a   (Linux查看版本当前操作系统内核信息) 2.cat /proc/version (L ...

  4. Linux查看系统基本信息,版本信息(最全版)

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/qq_31278903/article/d ...

  5. linux静态链接库与动态链接库详解

    一顺便说说了哦  通常情况下,对函数库的链接是放在编译时期(compile time)完成的.所有相关的对象文件(object file)与牵涉到的函数库(library)被链接合成一个可执行文件(e ...

  6. linux静态链接库

    库 库是写好的现有的,成熟的,可以复用的代码.现实中每个程序都要依赖很多基础的底层库,不可能每个人的代码都从零开始,因此库的存在意义非同寻常 本质上来说库是一种可执行代码的二进制形式,可以被操作系统载 ...

  7. linux下依赖库的版本问题引起的安装失败:libssl-dev版本问题无法安装 :libssl-dev : 依赖: libssl1.0.0 (= 1.0.1-4ubuntu3) 但是 1.0.1-4ubuntu5.31 正要被安装

    依赖库版本问题引起的安装失败解决方法如下有两种: 1.是由于源需要更新,如下操作: libssl-dev : 依赖: libssl0.9.8 (= 0.9.8o-1ubuntu4) 但是 0.9.8o ...

  8. linux查看系统类型和版本

    首先大致普及下linux系统的版本内容. 1.内核版本和发行版本区别 我的理解,内核版本就是指linux中最基层的代码,版本号如 Linux version 3.10.0-327.22.2.el7.x ...

  9. Linux查看内核和系统版本

    1. 查看内核版本命令: 1) [root@q1test01 ~]# cat /proc/version Linux version 2.6.9-22.ELsmp (bhcompile@crowe.d ...

随机推荐

  1. C# SqlBulkCopy 大量数据导入到数据库

    之前写了一篇C# 直接使用sql语句对数据库操作 (cmd.ExecuteNonQuery)的文章 这是针对数据量不大的操作,换句话说,效率太低,所以在此介绍一个效率高的.能大批量导入到数据库的方法 ...

  2. .net Form 的Autoscalemode属性

    .net Form 的Autoscalemode属性如果设置成Font 将会随着系统字体的大小来改变form大小 有时候会造成布局混乱,小心使用

  3. GDI+应用

    GDI+:Graphics Device Interface Plus也就是图形设备接口,提供了各种丰富的图形图像处理功能;在C#.NET中,使用GDI+处理二维(2D)的图形和图像,使用Direct ...

  4. 心形java和C语言2019/10/17

    在网上无意中看到这个代码,学习了一下心形函数的知识:http://mathworld.wolfram.com/HeartCurve.html package dada; /** * 了解Heart C ...

  5. 每天一点点之vue框架开发 - vue 动态替换路由(地址栏)参数

    import merge from 'webpack-merge': // 修改原有参数 this.$router.push({ query:merge(this.$route.query,{'max ...

  6. mybatis环境搭建(eclipse,idea)

    基于java配置SSM,eclipse 新建maven,web项目 .... 项目结构: jar包 pom.xml spring和DispatcherServlet上下文 public class D ...

  7. Swift - UISplitViewController

    https://blog.csdn.net/weixin_43704791/article/details/86424080 2019年01月13日 AppDelegate中: func applic ...

  8. UVA 10003 区间DP

    这个题目蛮有新意的,一度导致我没看透他是区间DP 给一个0-L长度的木板,然后给N个数,表示0-L之间的某个刻度,最后要用刀把每个刻度都切一下 使其断开,然后每次分裂的cost是分裂前的木板的长度.求 ...

  9. CSS属性之float浮动属性

    float 属性定义元素在哪个方向浮动.以往这个属性总应用于图像,使文本围绕在图像周围,不过在 CSS 中,任何元素都可以浮动.浮动元素会生成一个块级框,而不论它本身是何种元素. float有四个属性 ...

  10. [题解] Luogu P2000 拯救世界

    生成函数板子题...... 要写高精,还要NTT优化......异常dl 这个并不难想啊...... 一次召唤会涉及到\(10\)个因素,全部写出来,然后乘起来就得到了答案的生成函数,输出\(n\)次 ...