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

本文介绍了解决交叉编译器arm-linux-gcc在64位系统中无法运行的问题,详细步骤包括确认系统位宽、交叉编译器位宽,并提供安装32位库的具体方法。

首先贴出出错提示信息:

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

转载于:https://www.cnblogs.com/dakewei/p/5917813.html

zlib是提供数据压缩用的函式库,由Jean-loup Gailly与Mark Adler所开发,初版0.9版在1995年5月1日发表。zlib使用DEFLATE算法,最初是为libpng函式库所写的,后来普遍为许多软件所使用。此函式库为自由软件,使用zlib授权。截至2007年3月,zlib是包含在Coverity的美国国土安全部赞助者选择继续审查的开源项目。 qlibzip 是基于zlib的一个实用程序库,使用Qt和Windows一些底层API实现,它主要用于将文件夹压缩到一个zip文件,或将一个zip文件解压缩到文件夹。 //------------------------------------------------------------------------------ // Description: Compress files to a ZIP file. // Parameter: sourceFiles Source files, supporting wildcards. // Parameter: destFile The ZIP file path. // Return Value: true/false. //------------------------------------------------------------------------------ extern "C" bool ZipCompress(const QString &sourceFiles, const QString &destFile); //------------------------------------------------------------------------------ // Description: Extract files from a ZIP file. // Parameter: sourceFile Source ZIP file. // Parameter: destFolder The folder to output files. The parent of the // specified folder MUST exist. // Return Value: true/false. //------------------------------------------------------------------------------ extern "C" bool ZipExtract(const QString &sourceFile, const QString &destFolder); //------------------------------------------------------------------------------ // Description: Extract special file from a ZIP file into memory block. // Parameter: sourceFile Source ZIP file. // Parameter: entryName Special entry name in ZIP file. // Return Value: Extracted memory block. //------------------------------------------------------------------------------ extern "C" QByteArray ZipExtractItem(const QString &sourceFile, const QString &entryName); 具体实例请看demo文件夹。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值