ele-madman 发表于 2014-7-15 16:17:52

linux stm32编译出错

编译不太大的文件没问题,就是上了ucgui出现如下错误

dawanpi 发表于 2014-7-21 12:51:51

楼主要实现这个函数吧,malloc依赖的:
caddr_t_sbrk (int incr)
caddr_t就是 char*,在sys/types.h里面。
参考:
http://stm32discovery.nano-age.co.uk/open-source-development-with-the-stm32-discovery/getting-newlib-to-work-with-stm32-and-code-sourcery-lite-eabi

ele-madman 发表于 2014-7-22 15:50:59

gnu的编译器会把不需要的文件也链接进目标文件,这样导致代码太大溢出了,就算有这个函数也无济于事,ccs貌似也会,keil就不会,还是没能解决如何把需要的编译文件链接,去除没用的

dawanpi 发表于 2014-7-23 16:54:16

楼主怎么能确定那个函数是不需要的,如果ucgui依赖标准c库,或者有动态分配内存的功能那就很可能需要。我在stm32上跑freertos的时候,用gcc也有那个问题,自己实现相关函数后就好了,printf函数还可以直接输出到串口。

ele-madman 发表于 2014-7-23 21:32:09

malloc依赖,ucgui里就只有JPEG里有,但我把JPEG组件移除了,搜索文件夹并没有调用malloc,我看过其他网友的这个错误,并没有前面那个重叠section错误,,

ele-madman 发表于 2014-7-23 21:33:09

还有莫元怎么给你呢?
页: [1]
查看完整版本: linux stm32编译出错