• 添加了环境变量,然而交叉编译器还是无法运行的解决方案


    首先贴出出错提示信息:

    jello@kali:/usr/local/arm/2.95.3/bin$ arm-linux-
    arm-linux-addr2line   arm-linux-gasp        arm-linux-protoize
    arm-linux-ar          arm-linux-gcc         arm-linux-ranlib
    arm-linux-as          arm-linux-gcj         arm-linux-readelf
    arm-linux-c++         arm-linux-ld          arm-linux-size
    arm-linux-c++filt     arm-linux-nm          arm-linux-strings
    arm-linux-g++         arm-linux-objcopy     arm-linux-strip
    arm-linux-g77         arm-linux-objdump     arm-linux-unprotoize
    jello@kali:/usr/local/arm/2.95.3/bin$ arm-linux-gcc -v
    bash: /usr/local/arm/2.95.3/bin/arm-linux-gcc: 没有那个文件或目录

    1.确定当前系统的位宽:

    通过使用uname -a可以得到当前linux系统的位宽,本人的kali2.0位宽信息如下:

    jello@kali:/usr/local/arm/2.95.3/bin$ uname -a
    Linux kali 4.0.0-kali1-amd64 #1 SMP Debian 4.0.4-1+kali2 (2015-06-03) x86_64 GNU/Linux
    从以上关键字x86_64可得本人的系统是64bit的

    2.确定交叉编译器的位宽:

      2.1直接切换目录到交叉编译器的安装目录,本人的交叉编译器安装在/usr/local/arm/2.95.3/bin目录下,所以:

    jello@kali:~$ cd /usr/local/arm/2.95.3/bin/

      2.2使用file命令查看交叉编译器arm-linux-gcc的文件信息

        jello@kali:/usr/local/arm/2.95.3/bin$ file arm-linux-gcc

        本人的查询信息如下:

        jello@kali:/usr/local/arm/2.95.3/bin$ file arm-linux-gcc
        arm-linux-gcc: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.0.0, not stripped
      由此即可知道交叉编译器之所以不能运行的原因是没有安装32位库的原因(在本人的kali2.0系统下,默认没有安装32位库)

    3.解决方案:安装32位库

    本人kali2.0安装32库的命令如下:

    jello@kali:/usr/local/arm/2.95.3/bin$ sudo apt-get install libc6-i386

  • 相关阅读:
    剑指47 礼物的最大价值
    剑指46 把数字转化成字符串
    剑指41:数据流中的中位数
    剑指39 数组中出现次数超过半数的数
    centos 7关闭与启用防火墙,开放端口,常用命令介绍
    用docker swarm搭建docker集群
    centos 7离线安装docker, 离线安装docker-compose
    centos 7离线安装harbor
    mysql-8安装教程(windows 64位)
    centos 7离线安装中文版GitLab
  • 原文地址:https://www.cnblogs.com/dakewei/p/5917813.html
Copyright © 2020-2023  润新知