zoukankan      html  css  js  c++  java
  • 【complier】如何查看ARM交叉编译的可执行程序依赖的动态库?

    Date: 2018.10.16


    1、参考

    https://www.aliyun.com/jiaocheng/192929.html

    2、在Linux PC上查看arm交叉编译的可执行文件依赖的动态库

        在Ubuntu宿主机上查看ARM交叉编译好的可执行程序和库文件的相关依赖关系,类似于PC linux上的ldd命令。
        在电脑上安装的Linux系统中,有一个ldd命令,可以查看对应的可执行文件或库文件依赖哪些库,但可执行文件或库文件要求与操作系统的编译器类型相同,即电脑是X86的GCC编译器,那么无法通过ldd命令查看ARM交叉编译器编译出来的可执行文件或库文件。 如果想在Ubuntu等Linux宿主机上查看ARM交叉编译好的可执行程序和库文件的相关依赖关系,可以采用下面的命令:

    readelf -a  ./program_arm | grep "Shared"
    或者:
    arm-hisiv500-linux-readelf -a ./program_arm  | grep "Shared"
    
    3、示例
    [soaringlee@ubuntu]$ readelf -a  ./mpeg2decode | grep "Shared"
    0x000000000000001(NEEDED)             Shared library:[libm.so.6]
    0x000000000000001(NEEDED)             Shared library:[libc.so.6]
    [soaringlee@ubuntu]$ 
    

    说明:从示例中可以看出,可执行文件mpeg2decode的运行依赖于libm.so.6和libc.so.6。


    THE END!

  • 相关阅读:
    CF601C Kleofáš and the n-thlon 题解
    CSP-J2 2020 T3,T4 题解
    题解:Luogu P2051 [AHOI2009]中国象棋
    三角函数
    Luogu P1904 天际线
    计算几何初步
    C++STL(set……)
    斜率优化DP
    欧拉图、哈密顿图
    初赛—错题集
  • 原文地址:https://www.cnblogs.com/SoaringLee/p/10532331.html
Copyright © 2011-2022 走看看