Linux-ARM-裸机开发-开发环境搭建

芯片:IMX6U

Ubuntu 和 Windows 文件互传

方法一:复制粘贴

如果 Ubuntu 使用的是虚拟机 VMware 可以直接复制粘贴。如果是两天不同的主机,那么就无法复制。

方法二:FTP
1、开启 Ubuntu 下的 FTP 服务器。
bash 复制代码
sudo apt-get install vsftpd    //安装 FTP 服务
sudo vi/etc/vsftp.conf        // 通过 vi 命令打开 /etc/vsftp.conf

// 打开后找到下面这两行,确保这两行前面没有 # ,如果有 就删除掉。
local_enable=YES
write_enable=YES

:wq    //保存退出
sudo /etc/inti.d/vsftpd restart    //重启 FTP 服务
2、Windows 下 FTP 客户端安装

使用 FileZilla 这个软件。

文件->站点管理器->站点->输入名字---主机:Ubuntu 的 IP地址,通过 ifconfig 命令查看---用户:Ubuntu 的用户名---密码:Ubuntu 的密码。->点击连接->连接成功后,左侧是本地站点也就是 Windows 的文件,右侧就是 Ubuntu 。

如果 Ubuntu 下的文件夹显示都是乱码,是由于字符集的问题,解决方案。

文件->站点管理器->字符集->选择强制 UTF-8->点击连接。

传输方式:直接拖拽就可以。

Ubuntu 下 NFS 和 SSH 服务开启

NFS 服务开启

Linux 驱动开发,需要 NFS 启动,所以要先安装并开启 Ubuntu 中的 NFS 服务。

bash 复制代码
sudo apt-get install nfs-kernel-server portmap    //安装 NFS
mkdir linux/nfs    //创建一个 二层级文件夹 linux/nfs ,用于之后开发板通过网络访问 nfs 这个文件夹
sudo vi /etc/exorts    //配置 nfs,通过 vi 进入 exports文件
/home/feng/liux/nfs *(rw,snc,no_root_squash)    //添加这行命令
:wq    //保存退出
sudo /etc/init.d/nfs-kernel-server restart    //重启 NFS 服务
SSH 服务开启

开启 Ubuntu 的 SSH 服务以后我们就可以在 Windows 下使用终端登录到 Ubuntu ,这个不需要配置。

bash 复制代码
sudo apt-get install openssh-server

交叉编译器安装

需要在 Linux 下编译代码,那么就需要编译器,但是 Ubuntu 自带的 gcc 编译器是针对 X86 架构的,而我们要编译 ARM 架构的代码,所以需求是,在一个 X86 架构的 PC 上运行,可以编译 ARM 架构代码的 GCC 编译器,这个编译器就叫做 交叉编译器总结:

1、是一个 GCC 编译器。

2、运行在 X86 架构的 PC 上的。

3、是编译 ARM 架构代码的,也就是编译出来的可执行文件是在 ARM 芯片上运行的。

交叉的意思是在一个架构上编译另外一个架构的代码,相当于两个架构价交叉起来了。

其他博客的交叉编译器方法

https://blog.csdn.net/weixin_53403301/article/details/147542636https://blog.csdn.net/weixin_53403301/article/details/147542636linaro 交叉编译器

https://releases.linaro.org/components/toolchain/binaries/https://releases.linaro.org/components/toolchain/binaries/

arm 提供的 GNU 交叉编译器

https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloadshttps://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads创建工具文件夹用于存放各种工具

bash 复制代码
mkdir /linux/tool    //以后和工具相关的放在 tool 文件夹下

通过 FTP 方式将 Windows 下载的交叉编译器放置到 Ubuntu 下的 linux/tool 文件夹下,然后将其复制到 /usr/local/arm/ 文件夹下,然后再解压。

bash 复制代码
sudo mkdri /usr/local/arm
cd /home/feng/linux/tool/
sudo cp gcc-linaro.4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz /usr/local/arm/
cd /usr/local/arm/
sudo tar -vxf gcc-linaro.4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz

解压完成之后,Ubuntu 添加环境变量,也就是打开 /etc/profile 然后再最下面添加下面内容:

bash 复制代码
sudo vi /etc/profile    //进入 /etc/profile 文件
//    添加下面环境变量路径
export PATH=SPATH:/usr/local/arm/gcc-linaro.4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin
:wq    //保存退出
reboot    //重启

arm-linux-gnueabihf-gcc -v    //验证是否安成功

Putty 软件的安装

用来作为 SSH 或 串口终端的。下载网址如下:

https://www.chiark.greenend.org.uk/~sgtatham/putty/https://www.chiark.greenend.org.uk/~sgtatham/putty/

相关推荐
啵啵鱼爱吃小猫咪11 小时前
Ubuntu 20.04 + ROS Noetic 源码安装 libfranka 0.8.0 和 franka_ros 0.8.0 完整教程
linux·运维·ubuntu
ljs64827395112 小时前
Linux运维实操:vi编辑器永久配置静态IP(CentOS系列)
linux·运维·编辑器
dddwjzx12 小时前
嵌入式Linux C应用编程入门——高级I/O
linux·嵌入式
Waay13 小时前
Linux 三个核心环境变量配置文件、作用域、生效方式完整梳理
linux·运维·学习·云原生·容器
星空语13 小时前
音频001_Android+Linux车载/手机音频全链路分层架构图
android·linux·音视频
携程DBA13 小时前
数据库软限制相关研究
linux·mysql·性能
huy1n913 小时前
Ubuntu 22.04部署Claude Code并接入DeepSeek-V4模型完整教程
linux·ubuntu·deepseek·claude code
jieyucx14 小时前
Shell实战:无限循环监控Nginx服务,异常自动重启+双份日志留存
linux·运维·nginx·自动化·shell
ICECREAM14 小时前
I/O 多路复用完全指南 —— select、poll、epoll
linux
进阶的猪14 小时前
Linux 内核移植过程学习
linux·学习