UBUNTU 12.04下傻瓜式简单安装arm-linux-gcc等gnu arm toolchain交叉编译工具

本文详细介绍了在Ubuntu 12.04上安装arm-linux-gcc等GNU ARM交叉编译工具的两种方法:通过作者提供的工具链和官方原版安装。提供了一键安装命令,方便用户快速设置交叉编译环境。

欢迎转载,转载时请保留作者信息,谢谢。

邮箱:tangzhongp@163.com

博客园地址:http://www.cnblogs.com/embedded-tzp

Csdn博客地址:http://blog.csdn.net/xiayulewa



1. 验证无误的工具链安装(能正常编译linux,busybox等):

可以去这个地址下载工具链,是作者上传的,要2分,当是辛苦分了,要免费的可以去min2440官网下载,地址我在下面也贴出来了。

CSDN下载链接:http://download.csdn.net/detail/xiayulewa/8615245

免费版的:http://arm9download.cncncn.com/mini2440/linux/arm-linux-gcc-4.4.3-20100728.tar.gz

使用方法:

  解压到某个文件夹(目录),如/usr/local/arm-cross-tool/下,再添加环境变量就OK了,如在/etc/profile文件后添加:
        #arm-linux-gcc
        export PATH=$PATH:/usr/local/arm-cross-tool/friendly/toolschain/4.4.3/bin, 交叉工具就可以用了(当然在shell中需要source  /etc/profile).

eg: arm-linux-gcc  -Wall arm_main.c


2. 下面官方原版安装,下面的文章是之前写的,那时并没有完全验证,所以实际使用会有些问题,编译linux内核没问题,但是编译busybox时会因缺少某些库出错,当然可以自己去完善工具链,但是那就太麻烦了,所以下面的文章仅供阅读,实用性不大了。

如果是ubuntu 12.04,输入:

sudo add-apt-repository ppa:terry.guo/gcc-arm-embedded ;

medivh@DT-AND-11430203:~$ sudo add-apt-repository ppa:team-gcc-arm-embedded/ppa This PPA is an alternative to toolchain released at https://launchpad.net/gcc-arm-embedded. The source codes for both are same. Currently supports Ubuntu 10.04/12.04/14.04/14.10 32 and 64 bit. Detailed explanations to Launchpad PPA can be found at https://help.launchpad.net/Packaging/. That website explains how a PPA is set up and how to add existing PPA and install software from it. Here are quick steps to install toolchain from this PPA on Ubuntu before 14.04: Step1: Inside Ubuntu, open a terminal and input "sudo add-apt-repository ppa:team-gcc-arm-embedded/ppa" Step2: Continue to input "sudo apt-get update" Step3: Continue to input to install toolchain "sudo apt-get install gcc-arm-embedded" To remove installed toolchain, just input "sudo apt-get remove gnu-arm-embedded". To update the toolchain, just repeat above step2 and step3. If it reports error message of conflict to gcc-arm-none-eabi, which is likely if upgrading from 4.x to 5+, please uninstall it first with: "sudo apt-get remove gcc-arm-none-eabi" Questions should be asked at https://answers.launchpad.net/gcc-arm-embedded Bug can be filed at https://bugs.launchpad.net/gcc-arm-embedded/+filebug. It is highly encouraged to ask question first before filing a bug. More info: https://launchpad.net/~team-gcc-arm-embedded/+archive/ubuntu/ppa Press [ENTER] to continue or Ctrl-c to cancel adding it. Ign:1 http://ppa.launchpad.net/team-gcc-arm-embedded/ppa/ubuntu focal InRelease Hit:2 http://security.ubuntu.com/ubuntu focal-security InRelease Err:3 http://ppa.launchpad.net/team-gcc-arm-embedded/ppa/ubuntu focal Release 404 Not Found [IP: 185.125.190.80 80] Hit:4 http://archive.ubuntu.com/ubuntu focal InRelease Hit:5 http://archive.ubuntu.com/ubuntu focal-updates InRelease Hit:6 http://archive.ubuntu.com/ubuntu focal-backports InRelease Reading package lists... Done E: The repository 'http://ppa.launchpad.net/team-gcc-arm-embedded/ppa/ubuntu focal Release' does not have a Release file. N: Updating from such a repository can't be done securely, and is therefore disabled by default. N: See apt-secure(8) manpage for repository creation and user configuration details. 这是什么问题,怎么解决
最新发布
10-14
<think>嗯,用户想在Ubuntu20.04安装arm-none-linux-gnueabi-gcc交叉编译工具链。我之前处理过类似的问题,记得常见的错误是缺少32位库,导致工具链无法运行。用户提供的引用里提到过这个问题,比如引用[1]和[2]都指出64位系统需要安装32位兼容库。首先,我需要确认用户安装的方法。引用[3]提到通过apt安装gcc-arm-linux-gnueabihf,但用户可能需要的是arm-none-linux-gnueabi-gcc,这可能来自不同的源,比如Linaro或CodeSourcery。引用[4]给出的是通过下载压缩包安装,但步骤可能不够详细。用户可能尝试过手动安装旧版本的工具链,比如arm-linux-gcc-4.4.3或arm-2009q3,但遇到了问题。这时候需要检查系统是否安装了必要的依赖库,比如lib32z1、lib32ncurses等。此外,环境变量是否正确设置也很重要,特别是PATH是否包含工具链的bin目录。另外,用户可能混淆了不同的工具链名称,比如arm-none-linux-gnueabi和arm-linux-gnueabihf,前者是用于裸机或嵌入式系统,后者是针对硬浮点的。需要明确用户的需求,推荐使用较新的工具链版本,比如arm-none-linux-gnueabihf,并通过官方仓库安装,避免手动解压带来的问题。 总结下来,正确的步骤应该是先安装32位库,然后通过apt安装官方维护的工具链,或者从ARM官网下载最新的工具链并配置环境变量。同时需要验证安装是否成功,并处理可能出现的路径或权限问题。</think>在Ubuntu 20.04安装$arm$\text{-}none$\text{-}linux$\text{-}gnueabi$\text{-}gcc$交叉编译环境的步骤如下: ### 一、安装32位兼容库 ```bash sudo apt update sudo apt install lib32z1 lib32ncurses6 lib32stdc++6 ``` 这是解决“找不到文件或目录”错误的关键步骤,因为旧版工具链需要32位运行环境[^1][^2] ### 二、安装交叉编译工具链 #### 方法1:通过APT安装(推荐) ```bash sudo apt install gcc-arm-linux-gnueabi g++-arm-linux-gnueabi ``` 新版本工具链已更名为$arm$\text{-}linux$\text{-}gnueabi$\text{-}gcc$,但完全兼容旧版功能[^3] #### 方法2:手动安装旧版(需特定版本时) 1. 下载工具链(示例使用arm-2009q3) ```bash wget https://releases.linaro.org/archive/12.04/components/toolchain/binaries/gcc-linaro-arm-none-linux-gnueabi-2012.04-20120426_linux.tar.bz2 ``` 2. 解压到系统目录 ```bash sudo tar -xjf gcc-linaro-arm-none-linux-gnueabi-*.tar.bz2 -C /usr/local/arm/ ``` 3. 配置环境变量 ```bash echo 'export PATH=$PATH:/usr/local/arm/gcc-linaro-arm-none-linux-gnueabi-2012.04/bin' >> ~/.bashrc source ~/.bashrc ``` ### 三、验证安装 ```bash arm-none-linux-gnueabi-gcc -v ``` 应显示类似$gcc$ version 4.4.1的版本信息[^2] ### 四、常见问题处理 1. **权限问题**: ```bash sudo chmod -R 755 /usr/local/arm/ ``` 2. **路径错误**: 检查工具链二进制文件实际路径: ```bash ls /usr/local/arm/*/bin/arm-none-linux-gnueabi-gcc ``` 3. **新版工具链替代方案**: ```bash sudo apt install crossbuild-essential-armhf ```
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值