嵌入式开发记录-day04 Ubuntu18切换到Ubuntu12以及配置 搭建ITOP4412环境
1、Linux交叉编译环境配置
刚开始装的是Ubuntu18,然后到了编译编译hello world到板子中运行的时候,各种折腾;也算有收获吧;不在多提;
重新下载一个ubuntu-12.04.5-desktop-amd64.iso,其中Ubuntu也有不同版本的,desktop一般是个人使用,也有服务器专属版的,用途不同,版本不同吧;
还有,amd64:属于电脑是64位的可以用,32位用不了,还有一种i386,i后面一串数字,这个32位可以使用,但是64位也可以用;所以64位的可以不用多管;
使用的是ITOP4412开发板,搭建交叉编译环境,下载arm交叉编译器---->arm-2009q3.tar.bz2;
新装的系统,需要sudo apt-get update ,更新apt-get;
sudo apt-get install vim
切换到root目录,sudo su root ;----> cd /usr/local、新建mkdir arm,chmod 777 arm;
将arm-2009q3.tar.bz2拷贝到arm 目录下,并解压 tar -vxf arm-2009q3.tar.bz2,
切换到root目录,cd /root,修改配置文件vim .bashrc,在最后一行添加:export PATH=$PATH:/usr/local/arm/arm-2009q3/bin,保存退出;
配置文件生效:source .bashrc;
可以试下arm-none-linux-gnueabi-gcc -v ;若提示找不到文件或目录:
是因为命令是32位的,在64位系统上运行出错:安装lsb-core库;
sudo apt-get install lsb-core
还有一种情况,Ubuntu版本不一样,苏需要的库也可能有差异,重新搭建环境,发现这个库安装了还是出现上面的问题,
重新安装了库lib32ncurses5,就可以了
此时应该就没问题;
若是切换到用户liu下,可能就识别不了命令:修改配置文件:
cd /home/liu 退到用户目录下;
vim .bashrc; 并在最后一行添加:export PATH=$PATH:/usr/local/arm/arm-2009q3/bin
使生效:source .bashrc
hello world
#include<stdio.h>
int main(void)
{ printf("hello world\n"); return 0;}
arm-none-linux-gnueabi-gcc hello.c -o hello 编译生成可执行文件
将hello拷贝到u盘中;
2、ITOP4412挂载U盘,
开发板串口、电源连接上电;并打开超级端Hyper Terminal,启动完成后插入u盘,
挂载u盘 mount /dev/sda1 /mnt/disk , sda1是设备名称,可以查看下,我这里出现了sda1 sda2(这个好像是U盘问题,windows上也是两个盘符)
挂载好,cd /mnt/disk 运行: ./hello // 在挂载u盘设备的时候,可能名称不固定,可多试几次;
可以正常输出;

浙公网安备 33010602011771号