64bit ubuntu 16.04 安装海思编译32位工具链
2018-03-07 14:19
1076 查看
获取海思编译工具链
想办法获得Hi3519V101R001C02SPC022.rar工具包。配置全部的环境可以参考 该博客,这里只是介绍一些在配置交叉编译工具链时遇到的坑。
确定Ubuntu操作系统位数
使用uname -a命令来确定Ubuntu操作系统的版本,如果确定为32bit,那就无需进行后面安装32bit库的过程。
如有类似如下的显示,那么你的操作系统就是64bit的,可以根据后续的内容进行选择性的问题解决。
Linux f8eb64277496 4.9.75-linuxkit-aufs #1 SMP Tue Jan 9 10:58:17 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
遇到的问题及解决方法
我这里选择使用Docker进行安装,使用的镜像为精简过的操作系统。解压应用找不到
表现:tar (child): lbzip2: Cannot exec: No such file or directory
解决:使用
apt install或
apt-get install方式安装相应的解压应用,我这里安装了两个lbzip2和bzip2
解压时出现”Directory renamed before its status could be extracted”问题
表现:在解压工具链安装包时,可能会出现该问题(Docker中概率会比较高,因为貌似会对元文件进行修改)解决:安装bsdtar,
apt-get install -y bsdtar,其用法和tar一样。安装完成后,在
arm-hisiv500-linux.install文件中将使用
tar命令的部分,改为
bsdtar即可。
工具链编译器无法执行,报”No such file or directory”
表现:在运行工具链时,文件明明存在,但还是会出现没有此文件的提示。解决:
这是由于在64位系统中,没有安装32位库造成的。
root@f8eb64277496:/opt/hisi-linux/x86-arm/arm-hisiv500-linux/bin# apt install ia32-libs Reading package lists... Done Building dependency tree Reading state information... Done Package ia32-libs is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source However the following packages replace it: lib32ncurses5 lib32z1
安装lib32ncurses5,lib32z1这两个库之后,问题解决。
libstdc++.so.6库找不到
表现:在执行工具链中的编译器时,会出现这样的动态库找不到的问题:root@f8eb64277496:/opt/hisi-linux/x86-arm/arm-hisiv500-linux/bin# ldd ./arm-hisiv500-linux-uclibcgnueabi-gcc linux-gate.so.1 => (0xf7727000) libstdc++.so.6 => not found libm.so.6 => /lib32/libm.so.6 (0xf76ca000) libgcc_s.so.1 => not found libc.so.6 => /lib32/libc.so.6 (0xf7516000) /lib/ld-linux.so.2 (0xf7728000)
这是用于32bit库没有安装libc6库的原因。
解决:执行
apt-get install lib32stdc++6即可。参考该博客
相关文章推荐
- 64位的ubuntu14.04 LTS安装 Linux交叉编译工具链及32位“ia32-libs”依赖库
- Ubuntu 16.04 安装 arm-linux-gcc 交叉编译工具
- 64位的ubuntu14.04 LTS安装 Linux交叉编译工具链及32位“ia32-libs”依赖库
- Ubuntu16.04安装配置嵌入式交叉编译工具链arm-linux-gcc
- ubuntu16.04安装32位交叉编译工具链的兼容包
- ubuntu16.04安装交叉编译工具
- 32位的Ubuntu16.04安装QT5.8,并编译实现window环境下的代码
- 关于在ubuntu16.04 64位系统上安装交叉编译工具出现错误的解决方法
- Ubuntu 16.04安装JAD反编译工具(Java)
- Mini2440交叉编译工具在Ubuntu16.04上的安装
- ubuntu16.04 64bit安装arm-none-linux-gnueabi交叉编译工具链
- 在ubuntu-16.04系统中安装arm-linux-gcc-4.3.2交叉编译工具
- Ubuntu 16.04 安装ARM交叉编译工具
- Ubuntu 16.04 安装 arm 树莓派3 交叉编译工具
- ubuntu-16.04 64bit 安装或者编译32的程序时报错的解决办法
- Ubuntu 安装arm-linux-gcc交叉编译工具
- ubuntu16.04编译安装mysql源码
- ubuntu 16.04 libQGLViewer编译安装指南
- Ubuntu 10.04系统 32位机上安装编译Android2.3源码
- ubuntu 14.04 64bit安装32位运行库