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/

相关推荐
AC是你的谎言18 分钟前
网络层和数据链路层
linux·网络·学习·智能路由器
waves浪游31 分钟前
基础开发工具(下)
linux·运维·服务器·开发语言·c++
春风霓裳2 小时前
ubuntu磁盘管理、磁盘扩容
linux·运维·ubuntu
直有两条腿2 小时前
【操作系统】非连续内存分配
linux
---学无止境---3 小时前
Linux交换缓存深度解析:从条目编码到缓存管理的完整机制
linux
---学无止境---3 小时前
Linux内存回收与TLB管理:高效释放与缓存刷新的精密协作
linux
硬核子牙3 小时前
硬盘第一关:MBR VS GPT
linux
LCG元3 小时前
Linux 日志分析全攻略:快速从海量日志中定位问题
linux
_Power_Y3 小时前
Linux&git入门&设计模式(常考点)
linux·git·设计模式
海蓝可知天湛3 小时前
Ubuntu24.10禁用该源...+vmware无法复制黏贴“天坑闭环”——从 DNS 诡异解析到 Ubuntu EOL 引发的 apt 404排除折腾记
linux·服务器·安全·ubuntu·aigc·bug