嵌入式linux学习笔记(1)

学习目标

了解开发过程


学习内容

1、交叉编译器

概念: 在x86架构上编译arm架构的代码
(linaro公司)


2、linux开发环境

最初:windows(串口)+linux(编译)
最终:ubuntu系统开发

linux远程连接开发板(ssh)
 ssh [email protected](开发板ip)
 ip通过ifconfig查看

在linux下挂载同一个目录
 mount -t nfs -o nolock,nfsvers=3 192.168.1.6:/home/wyd/linux/mnt /mnt
(电脑的ip)

bug:连接超时
解决方法:sudo apt install nfs-kernel-server

第一个程序编写
hello.c
x86架构下编译: gcc -o hello hello.c
运行:./hello

GCC 编译器的编译流程是:预处理、编译、汇编和链接。
预处理就是展开所有的头文件、替换程序中的宏、解析条件编译并添加到文件中。
编译是将经过预编译处理的代码编译成汇编代码,也就是我们常说的程序编译。
汇编就是将汇编语言文件编译成二进制目标文件。
链接就是将汇编出来的多个二进制目标文件链接在一起,形成最终的可执行文件,链接的时候还会涉及到静态库和动态库等问题。
Makefile: 描述哪些文件需要编译、哪些需要重新编译的文件就叫做 Makefile, Makefile 就跟脚本文件一样,Makefile 里面还可以执行系统命令。

arm架构下编译: arm-linux-gnueabihf-gcc -o hello hello.c(在pc上)
运行:/mnt/hello(在开发板上,mnt为共享目录)


3、I.MX6ULL

在这里插入图片描述
在这里插入图片描述


4、linux开发和裸机的区别

在这里插入图片描述
在这里插入图片描述

空格:输入 
换行:输入<br>

学习时间

2021.1.27


学习产出

1、 csdn笔记 1篇

猜你喜欢

转载自blog.csdn.net/qq_44181970/article/details/113056132