完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
小弟最近在做lcd的裸奔,在画线的代码中用到了除法:
代码如下: void LCDDrawLine(U32 b_x,U32 b_y,U32 to_x,U32 to_y, U32 c) 83 { 84 S32 x_length,y_length; 85 U32 abs_x_length,abs_y_length; 86 U32 i,tmp; 87 x_length=(signed)(to_x-b_x); 88 y_length=(signed)(to_y-b_y); 89 90 abs_x_length=x_length & 0x80000000; 91 abs_y_length=y_length & 0x80000000; 92 93 if(abs_x_length > abs_y_length) 94 { 95 for(i=0;i 97 tmp=y_length*i/abs_x_length; 98 if(x_length<0) 99 { 100 PutPixel(b_x-i,b_y+tmp,c); 101 102 } 103 else 104 { 105 PutPixel(b_x+i,b_y+tmp,c); 106 } 107 } 108 } 109 else 110 { 111 112 for(i=0;i 114 tmp=x_length*i/abs_y_length; 115 if(y_length<0) 116 { 117 PutPixel(b_x+tmp,b_y-i,c); 118 119 } 120 else 121 { 122 PutPixel(b_x+tmp,b_y+i,c); 123 } 124 } 125 } 126 127 } 这个是Makefile: 1 objs := head.o main.o sdram.o lcd.o nand.o 2 3 4 lcd.bin:$(objs) 5 ARM-linux-ld -Ttext 0x30000000 $(objs) -Map test.map -o lcd_elf 6 arm-linux-objcopy -O binary -S lcd_elf $@ 7 arm-linux-objdump -D -m arm lcd_elf > lcd.dis 8 9 %.o:%.c 10 arm-linux-gcc -nostdlib -c -o $@ $< 11 12 %.o:%.s 13 arm-linux-gcc -nostdlib -c -o $@ $< 14 clean: 15 rm -f lcd.bin *.o lcd_elf lcd.dis 错误信息: xkf@ubuntu:~/work/2440/lcd$ make arm-linux-gcc -nostdlib -c -o head.o head.s arm-linux-gcc -nostdlib -c -o main.o main.c arm-linux-gcc -nostdlib -c -o sdram.o sdram.c arm-linux-gcc -nostdlib -c -o lcd.o lcd.c lcd.c:5: warning: initialization from incompatible pointer type arm-linux-gcc -nostdlib -c -o nand.o nand.c arm-linux-ld -Ttext 0x30000000 head.o main.o sdram.o lcd.o nand.o -Map test.map -o lcd_elf lcd.o: In function `LCDDrawLine': lcd.c:(.text+0x36c): undefined reference to `__aeabi_uidiv' lcd.c:(.text+0x41c): undefined reference to `__aeabi_uidiv' make: *** [lcd.bin] Error 1 128 去网上找了资料,说是要指定库,但是不知道是哪个库,路径是什么?,Makefile要怎么改?我的编译器版本是4.3.3 |
|
相关推荐
2个回答
|
|
书的上程序也用到了除法,我是自己添加了除法库:自己在内核里找了一些div开头的.S文件;
你现在是换了工具链,这些除法要么自己实现,要么使用库。不知libm.a这个库里有没有,试试看:在工具链目录下搜一下 |
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
197个成员聚集在这个小组
加入小组为什么点亮LED的例子放在NORFlash上跑会出现奇怪的现象?
2166 浏览 6 评论
1975 浏览 5 评论
韦东山老师推出的《玩转ARM裸机实战》课程将帮你以上问题一扫而光!
4530 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-3 19:49 , Processed in 0.705271 second(s), Total 85, Slave 63 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号