【经验分享】Ubuntu下如何解决问题arm-linux-gcc:未找到命令

2024-04-02 08:36

本文主要是介绍【经验分享】Ubuntu下如何解决问题arm-linux-gcc:未找到命令,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

【经验分享】Ubuntu下如何解决问题arm-linux-gcc:未找到命令

  • 前言
  • 问题分析
  • 解决方法


前言

在编译过程中发现一个问题,明明之前安装了gcc-4.6版本,版本信息都是正常显示的,刚安装上去的时候也是可以用的。但不知道什么原因突然不能用了。。提示

arm-linux-gcc:未找到命令

gcc版本信息是正确的。(我这个是ubuntu14.04的)
在这里插入图片描述


问题分析

首先查找一下gcc的安装路径在usr/bin下,ls | grep gcc,发现我安装的是x86架构的gcc。sudo apt-get install gcc-4.6默认安装的是x86架构,那理解了,原来是安装的系统架构有问题,但不知道为什么刚安装上去的时候可以正常编译过去。
在这里插入图片描述
那么接下来安装arm架构的交叉编译工具就可以找到arm-linux-gcc了。
但是在用命令sudo apt-get install arm-linux-gcc,发现无法定位软件包。

正在分析软件包的依赖关系树
正在读取状态信息... 完成
E: 无法定位软件包 arm-linux-gcc
E: 无法按照正则表达式 arm-linux-gcc 找到任何软件包

网上查了下,虽然这个交叉编译工具链叫arm-linux-gcc,但是安装包的名字却是反着来的。。

查看linux 下交叉编译器安装目录,linux安装交叉编译器arm-linux-gnueabi-gcc【详细教程】

然后后面需要加上gnueabi或者gnueabihf。意思是GNU嵌入式操作系统,二进制应用程序接口(Application Binary Interface (ABI) for the ARM Architecture)
gnueabi和gnueabihf区别


解决方法

那么最简单的方法就是安装arm-linux-gnueabi-gcc,命令是

sudo apt-get install gcc-arm-linux-gnueabi

或者

sudo apt-get install gcc-arm-linux-gnueabihf

安装完成后在/usr/bin/下会生成如下文件,可以看到是gcc 4.7版本的。如果无法用apt-get命令安装此工具,那么就需要到官网上去下载再安装工具链。
在这里插入图片描述
实际测试下,现在可以执行arm-linux-gnueabi-的工具链命令了,但是我们需要实现的是命令arm-linux-gcc,其实很简单,软链接一下就可以了。

sudo ln arm-linux-gnueabi-* /usr/bin/arm-linux-*

自动无法链接,那么手动链接一下。
在这里插入图片描述
至此问题解决,不会报错了,Over。
在这里插入图片描述

这篇关于【经验分享】Ubuntu下如何解决问题arm-linux-gcc:未找到命令的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/869497

相关文章

在Ubuntu上部署SpringBoot应用的操作步骤

《在Ubuntu上部署SpringBoot应用的操作步骤》随着云计算和容器化技术的普及,Linux服务器已成为部署Web应用程序的主流平台之一,Java作为一种跨平台的编程语言,具有广泛的应用场景,本... 目录一、部署准备二、安装 Java 环境1. 安装 JDK2. 验证 Java 安装三、安装 mys

Linux磁盘分区、格式化和挂载方式

《Linux磁盘分区、格式化和挂载方式》本文详细介绍了Linux系统中磁盘分区、格式化和挂载的基本操作步骤和命令,包括MBR和GPT分区表的区别、fdisk和gdisk命令的使用、常见的文件系统格式以... 目录一、磁盘分区表分类二、fdisk命令创建分区1、交互式的命令2、分区主分区3、创建扩展分区,然后

Linux中chmod权限设置方式

《Linux中chmod权限设置方式》本文介绍了Linux系统中文件和目录权限的设置方法,包括chmod、chown和chgrp命令的使用,以及权限模式和符号模式的详细说明,通过这些命令,用户可以灵活... 目录设置基本权限命令:chmod1、权限介绍2、chmod命令常见用法和示例3、文件权限详解4、ch

Linux内核之内核裁剪详解

《Linux内核之内核裁剪详解》Linux内核裁剪是通过移除不必要的功能和模块,调整配置参数来优化内核,以满足特定需求,裁剪的方法包括使用配置选项、模块化设计和优化配置参数,图形裁剪工具如makeme... 目录简介一、 裁剪的原因二、裁剪的方法三、图形裁剪工具四、操作说明五、make menuconfig

Golang使用etcd构建分布式锁的示例分享

《Golang使用etcd构建分布式锁的示例分享》在本教程中,我们将学习如何使用Go和etcd构建分布式锁系统,分布式锁系统对于管理对分布式系统中共享资源的并发访问至关重要,它有助于维护一致性,防止竞... 目录引言环境准备新建Go项目实现加锁和解锁功能测试分布式锁重构实现失败重试总结引言我们将使用Go作

Linux使用nohup命令在后台运行脚本

《Linux使用nohup命令在后台运行脚本》在Linux或类Unix系统中,后台运行脚本是一项非常实用的技能,尤其适用于需要长时间运行的任务或服务,本文我们来看看如何使用nohup命令在后台... 目录nohup 命令简介基本用法输出重定向& 符号的作用后台进程的特点注意事项实际应用场景长时间运行的任务服

什么是cron? Linux系统下Cron定时任务使用指南

《什么是cron?Linux系统下Cron定时任务使用指南》在日常的Linux系统管理和维护中,定时执行任务是非常常见的需求,你可能需要每天执行备份任务、清理系统日志或运行特定的脚本,而不想每天... 在管理 linux 服务器的过程中,总有一些任务需要我们定期或重复执行。就比如备份任务,通常会选在服务器资

Redis的Hash类型及相关命令小结

《Redis的Hash类型及相关命令小结》edisHash是一种数据结构,用于存储字段和值的映射关系,本文就来介绍一下Redis的Hash类型及相关命令小结,具有一定的参考价值,感兴趣的可以了解一下... 目录HSETHGETHEXISTSHDELHKEYSHVALSHGETALLHMGETHLENHSET

如何评价Ubuntu 24.04 LTS? Ubuntu 24.04 LTS新功能亮点和重要变化

《如何评价Ubuntu24.04LTS?Ubuntu24.04LTS新功能亮点和重要变化》Ubuntu24.04LTS即将发布,带来一系列提升用户体验的显著功能,本文深入探讨了该版本的亮... Ubuntu 24.04 LTS,代号 Noble NumBAT,正式发布下载!如果你在使用 Ubuntu 23.

什么是 Ubuntu LTS?Ubuntu LTS和普通版本区别对比

《什么是UbuntuLTS?UbuntuLTS和普通版本区别对比》UbuntuLTS是Ubuntu操作系统的一个特殊版本,旨在提供更长时间的支持和稳定性,与常规的Ubuntu版本相比,LTS版... 如果你正打算安装 Ubuntu 系统,可能会被「LTS 版本」和「普通版本」给搞得一头雾水吧?尤其是对于刚入