首页
社区
课程
招聘
[求助]编译嵌入式linux驱动程序时错误,急急急!!!
发表于: 2009-5-19 21:39 5772

[求助]编译嵌入式linux驱动程序时错误,急急急!!!

2009-5-19 21:39
5772
[error]:connot specify -o with -c or -S and multiple compilation
makefile 文件内容如下:
CC = /opt/host/armv4l/bin/armv4l-unknown-linux-gcc

LD = /opt/host/armv4l/bin/armv4l-unknown-linux-ld

CFLAGS = -D__KERNEL__ -I/linux2410/arm830/kernel/include -Wall -Wstrict-prototypes -Wno-trigraphs -Os -mapcs -fno-strict-aliasing -fno-common -fno-common -pipe -mapcs-32 -march=armv4 -mtune=arm9tdmi -mshort-load-bytes -msoft-float -DKBUILD_BASENAME=Lcd_driver -I/opt/host/armv4l/src/linux/include -DMODULE
      
Lcd_driver.o: Lcd_driver.c def.h
        $(CC) $(CFLAGS) -c $^ -o $@
                cp Lcd_driver.o  /-f
clean:
        -rm  -f   *.o

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 269
活跃值: (87)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
从提示信息看, 这一行写得有问题

$(CC) $(CFLAGS) -c $^ -o $@

因为编译器抱怨

-o 和 -c  不能一起使用

-c 只编译不连接
-o 指定输出的文件名

所以,建议改成

$(CC) $(CFLAGS) -c $^

试试

我对makefile语法也不熟悉,哈哈
2009-5-20 08:49
0
雪    币: 211
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
谢谢你的回答,不过好像不是你说的那个地方出错了,我想要改应该是改为:$(CC) $(CFLAGS) -c $< -o $@
2009-5-20 09:48
0
雪    币: 211
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
问题已解决,-I选项已经包含了头文件的搜索路径但这个路径不正确,而且我又在【Lcd_driver.o: Lcd_driver.c def.h】这里指定了头文件,有些重复。
把-I选项的路径配置正确,又把【Lcd_driver.o: Lcd_driver.c def.h】这里的def.h去掉就OK了。
2009-5-22 12:23
0
雪    币: 2604
活跃值: (64)
能力值: (RANK:510 )
在线值:
发帖
回帖
粉丝
5
通过分析、实验解决了问题。恭喜一下!
2009-5-22 13:02
0
雪    币: 211
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
谢谢斑竹鼓励,也再次感谢大家的关注。
2009-5-22 13:38
0
游客
登录 | 注册 方可回帖
返回
//