博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
嵌入式
阅读量:4677 次
发布时间:2019-06-09

本文共 1608 字,大约阅读时间需要 5 分钟。

● 交叉环境编译模块

1. 在linux-2.6.22.6/arch/arm/configs目录下拷贝对应的配置文件s3c2410_defconfig到内核源码树(是开发板对应的内核版本,不是linux主机使用的内核)的根目录下,重命名为.config

2. 编译内核

切换到root,命令行执行:

export ARCH=arm

export CROSS_COMPILE=arm-linux-

export PATH=$PATH:/home/rao/Softwares/gcc-3.4.5-glibc-2.3.6/bin

安装依赖库:

sudo apt-get install libncurses5-dev

开始编译:

make oldconfig

make 

make bzImage

make modules

make modules_install

会看到内核根目录下出现vmlinux文件

3. Makefile文件

ifneq ($(KERNELRELEASE),)

obj-m:= hello.o

else

KDIR := /home/rao/Program/linux-2.6.22.6

PWD := $(shell pwd)

CROSS_COMPILE=arm-linux-

CC =$(CROSS_COMPILE)gcc

default:

make -C $(KDIR) M=$(PWD) modules

endif

clean:

rm -f *.o
rm -f *.symvers
rm -f *.order
rm -f *.ko
rm -f *.mod.c

4. 在源文件目录下执行make,得到.ko文件,然后.ko文件拷贝到开发板上,执行insmod hello.ko 命令

参考:

http://www.linuxidc.com/Linux/2014-03/97500.htm

● 安装arm gcc

注意,要在32位Linux下安装,否则需要安装32位的库,比较麻烦

修改/etc/profile

export PATH=$PATH:/home/rao/Softwares/gcc-3.4.5-glibc-2.3.6/bin

● 开启nfs

CentOS默认安装了nfs服务

开启服务:

service rpcbind start

service nfs start

chkconfig rpcbind on

chkconfig nfs on

修改配置文件:

 vim /etc/exports

/home/rao/work  192.168.1.0/24(rw,no_root_squash,no_all_squash,sync,anonuid=501,anongid=501)

重新加载nfs

exportfs -r

挂载:

mount -t nfs -o nolock 192.168.1.110:/home/rao/work /mnt/work

参考:

http://www.linuxidc.com/Linux/2015-05/117378.htm

http://www.cnblogs.com/jkko123/p/6361476.html?utm_source=itdadao&utm_medium=referral

● tftp烧写

tftp 30000000 leds.bin  #将leds.bin下载到地址30000000(nand flash)

nand erase bootloader  #先擦除bootlloader代表的地址

nand write 30000000 bootloader  #将地址30000000处的程序烧写到BootLoader处

转载于:https://www.cnblogs.com/volcanorao/p/7056550.html

你可能感兴趣的文章
HDU 6319(单调队列)
查看>>
Android 常用数据操作封装类案例
查看>>
php方法 隐藏手机号中间四位
查看>>
需求获取常见的方法是进行客户访谈,结合你的实践谈谈会遇到什么问题,你是怎么解决的?...
查看>>
django之同源策略
查看>>
JAVA(时间对比排序程序)
查看>>
complex()
查看>>
各种字符串hash
查看>>
测试构造器它山之玉可以重构:身份证号(第四天)
查看>>
JS与PHP向函数传递可变参数的区别
查看>>
单元测试之初识
查看>>
golang github.com/go-sql-driver/mysql 遇到的数据库,设置库设计不合理的解决方法
查看>>
内存分配 保存数据
查看>>
嵌入式实时操作系统的可裁剪性及其实现
查看>>
VC++2012编程演练数据结构《31》狄杰斯特拉算法
查看>>
盘点:移动服务 #AzureChat
查看>>
Sass学习笔记
查看>>
C语言练习
查看>>
1001. Extending MyPoint class
查看>>
js使用showModalDialog,弹出一个自适应大小窗口
查看>>