我的環境:
主機:ubuntu 64位
開發板:mini2440
(6)makefile檔案修改
在/opt/friendlyarm/mini2440/linux-2.6.29下執行
$ sudo vi./makefile
搜尋arm-linux得到乙個結果
cross_compile?= arm-linux-
然後搜尋cross_compile,找到
as= $(cross_compile)as
ld= $(cross_compile)ld
cc= $(cross_compile)gcc
cpp= $(cc) -ear= $(cross_compile)ar
nm= $(cross_compile)nm
strip= $(cross_compile)strip
objcopy= $(cross_compile)objcopy
objdump= $(cross_compile)objdump
這裡定義了交叉編譯檔案的位置本例中作如下修改
(其中/usr/local/arm/4.4.3/bin/arm是安裝的arm-linux-gcc所在的位置
#as= $(cross_compile)as
as = /usr/local/arm/4.4.3/bin/arm-linux-as
#ld= $(cross_compile)ld
ld = /usr/local/arm/4.4.3/bin/arm-linux-ld
#cc= $(cross_compile)gcc
cc = /usr/local/arm/4.4.3/bin/arm-linux-gcc
cpp= $(cc) -e
#ar= $(cross_compile)ar
ar = /usr/local/arm/4.4.3/bin/arm-linux-ar
#nm= $(cross_compile)nm
nm = /usr/local/arm/4.4.3/bin/arm-linux-nm
#strip= $(cross_compile)strip
strip = /usr/local/arm/4.4.3/bin/arm-linux-strip
#objcopy= $(cross_compile)objcopy
objcopy = /usr/local/arm/4.4.3/bin/arm-linux-objcopy
objdump= $(cross_compile)objdump
#objdump = /usr/local/arm/4.4.3/bin/arm-linux-objdump
到這裡準備工作完成
(7)編譯
$ sudo make prepare
$ sudo make scripts
$ sudo make
2.2 **編寫。
這裡我們先寫個簡單的
#include#include#include//模組許可證
module_license("dual bsd/gpl");
//模組載入函式
static int hello_init(void)
//模組解除安裝函式
static void hello_exit(void)
//模組的註冊
module_init(hello_init);
module_exit(hello_exit);
2.3 模組的編譯
obj-m:=hello.o
current_path:=$(shell pwd)
arm_linux_kernel:=/opt/friendlyarm/mini240/linux-2.6.32.2
all:
$(make) -c $(arm_linux_kernel) subdirs=$(current_path) modules
clean:
rm -rf *.cmd *.o *.ko *.mod.c *.symvers *.order
編譯後會有hello.ko檔案
將hello.ko檔案傳輸到開發板上
安裝驅動模組
insmod hello.ko
解除安裝驅動模組
rmmod hello
檢視已經安裝的驅動模組
lsmod
嵌入式Linux開發流程
在乙個嵌入式系統中使用linux開發,根據應用需求的不同有不同的配置開發方法,但是一般都要經過如下的過程.1 1 建立開發環境 2 2 配置開發主機 配置minicom,一般的引數為波特率為115 200bps,資料位為8位,停止位為1,無奇偶校驗,軟體硬體流控設為無。在windows下的超級終端的...
嵌入式Linux開發流程
在學習嵌入式開發的過程中,尤其是開始入門時,包括各種各樣的教程,都是在講學習linux,很少講如何利用linux來開發屬於自己的嵌入式專案,也就是沒有乙個全域性的概念,簡單理解,大概流程如下 一 建立開發環境 這一步,就相當於在win系統下,要安裝乙個ide開發環境,如mdk,iar等。二 配置開發...
嵌入式linux開發 一
最近買了乙個 正點原子arm linux開發板,想在這兩天對資料熟悉一下.並結合 jz2440 探索者stm32f407 和 普中科技 em3.0 進行專題分析.開發板基於 soc mcimx6y2cvm08ab i.mx6ull cortex a7 易失性儲存 nt5cc256m16ep ek d...