3个源文件都编译生成了对应的.o文件,可是链接时却提示其中的两个找不到?~~
程序是个例程,不过里面缺少了mmu.lds文件,所以在对应的书中抄了个mmu.lds。
具体出错信息如下:
long@ubuntu:~/program/mmu$ make
arm-linux-gcc -Wall -O2 -c -o head.o head.S
arm-linux-gcc -Wall -O2 -c -o init.o init.c
arm-linux-gcc -Wall -O2 -c -o leds.o leds.c
arm-linux-ld -Tmmu.lds -o mmu_elf head.o init.o leds.o
arm-linux-ld: cannot find head.o,init.o
make: *** [mmu.bin] Error 1
long@ubuntu:~/program/mmu$ ls -l
total 36
-rw-rw-r-- 1 long long 912 2012-04-13 20:27 head.o
-rw-rw-r-- 1 long long 901 2012-04-13 19:54 head.S
-rw-rw-r-- 1 long long 6414 2012-04-13 19:54 init.c
-rw-rw-r-- 1 long long 1284 2012-04-13 20:27 init.o
-rw-rw-r-- 1 long long 987 2012-04-13 19:54 leds.c
-rw-rw-r-- 1 long long 704 2012-04-13 20:27 leds.o
-rw-rw-r-- 1 long long 316 2012-04-13 19:54 Makefile
-rw-rw-r-- 1 long long 91 2012-04-13 20:27 mmu.lds
mmu.lds文件:
SECTIONS
{
first 0x00000000 : {head.o,init.o}
secoud 0xB0004000 : AT(2048) {leds.o}
}