bryan_lia 发表于 2019-5-28 17:33:43

scons 工具link错误,编译OK,调试OK,连接不OK。

LINK rt-thread.elf                                                                                                   
g:/worksvn/rt_thread/env_release/env_released_1.1.2/env/tools/gnu_gcc/arm_gcc/mingw/bin/../lib/gcc/arm-none-eabi/5.4.1
/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-abort.o): In function `abort':                              
abort.c:(.text.abort+0xa): undefined reference to `_exit'                                                            
g:/worksvn/rt_thread/env_release/env_released_1.1.2/env/tools/gnu_gcc/arm_gcc/mingw/bin/../lib/gcc/arm-none-eabi/5.4.1
/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-signalr.o): In function `_kill_r':                           
signalr.c:(.text._kill_r+0x10): undefined reference to `_kill'                                                      
g:/worksvn/rt_thread/env_release/env_released_1.1.2/env/tools/gnu_gcc/arm_gcc/mingw/bin/../lib/gcc/arm-none-eabi/5.4.1
/../../../../arm-none-eabi/lib/armv7e-m/fpu\libc.a(lib_a-signalr.o): In function `_getpid_r':                        
signalr.c:(.text._getpid_r+0x0): undefined reference to `_getpid'                                                   
collect2.exe: error: ld returned 1 exit status                                                                        
scons: *** Error 1                                                                                    
scons: building terminated because of errors.                                                                        

以上是在RT-THEAR 提供的STM32历程中,添加xx.cpp文件后,添加编译SConscript文件,后执行的错误提示。

首先这个编译生成过程,在KEIL里面是OK 的,没有问题的,而且我已经实现下载使用的功能。

另外,在编译打印的过程中,可以清楚的看到xx.cpp被正常编译,没有提示错误。

后面出现了,这个问题,确实令人困惑,编译器是有差异,但是不应该这样也连接错误。导致后续工作无法开展

同样,我也采用了MDK5的编译方式做了测试,产生同样的问题。应该不是编译器的问题。

tyustli 发表于 2019-5-28 22:39:49

对应 BSP 是不是支持 C++ 呢?RT-Thread 官网有 C++ 支持的介绍,楼主可以看看

我夏了夏天 发表于 2019-6-6 15:12:27

看这个报错像是底层的 libc 库没有打桩,可能是不支持 gcc 工具链?
页: [1]
查看完整版本: scons 工具link错误,编译OK,调试OK,连接不OK。