EVN 配置the main function as user entry function无法运行

发表在 Env2019-11-16 15:22 [复制链接] 5 83

使用的库版本:rt-thread-v3.1.2" {! q$ h5 }4 ], N
BSP:stm32f10x
" a/ W; Y; X$ m  g! h' x使用EVN配置the main function as user entry function,编译报错: L6200E: Symbol rt_application_init multiply defined (by application.o and components.o)6 }& j- z# w- K. q; f
于是删除了application中重复的函数,再次编译,报出奇怪的错误:Undefined symbol assert_failed (referred from stm32f10x_rcc.o).
5 J/ c, S* i, c9 |7 }9 z0 y4 m) e
请问前辈这个问题怎么解决,谢谢!
% T. c% O, D9 X% N
使用道具 举报 显示全部楼层 回复
最新评论 | 正序浏览
显示全部楼层 |楼层直达:
发表于 2019-11-18 11:39:53 | 显示全部楼层
rt_application_init函数重复定义了,得删除
使用道具 举报 回复
发表于 2019-11-18 14:40:47 | 显示全部楼层
自娱自乐 发表于 2019-11-18 11:39
$ _5 H# Q; X3 p6 F: \rt_application_init函数重复定义了,得删除
& Z, H8 G+ P4 c; s* U
删了出来sysmbol assert_failed错误。+ K0 }, U3 G4 o0 g, o
看了BSP的其他工程,application目录下只有main.c,只有STM32F10x标准库application目录包括application.c、startup.c。
使用道具 举报 回复
发表于 2019-11-18 16:19:02 | 显示全部楼层
建议使用https://github.com/RT-Thread/rt-thread/tree/master/bsp/stm32 下的bsp
! |& t5 |3 V, r4 ?2 N& ?  f标准库的都没有再维护了
使用道具 举报 回复
发表于 2019-11-18 17:19:46 | 显示全部楼层
andychen 发表于 2019-11-18 16:195 |( G0 L8 Y( K2 B6 n4 J( S5 `
建议使用https://github.com/RT-Thread/rt-thread/tree/master/bsp/stm32 下的bsp
1 j+ E: [& M) F$ f* |! v& W标准库的都没有再维护了 ...
/ ]/ D0 s5 s' O  q" p- c
好的,了解
使用道具 举报 回复
发表于 2019-11-18 18:05:22 | 显示全部楼层
sf116 发表于 2019-11-18 14:40+ Y0 W9 a4 l. z: B. d
删了出来sysmbol assert_failed错误。- l4 n. g: |: G; U& I. x
看了BSP的其他工程,application目录下只有main.c,只有STM32F10x标 ...

7 ?# z- G+ Z* \  `6 e. i4 N好像不止要删rt_application_init函数,还要删startup.c里的rtthread_startup函数,因为component.c里有。删完后会从component.c里的rtthread_startup函数启动,然后再把使用堆的代码在rtthread_startup函数里加上* }( u1 K* v) S7 h7 `7 ~
#ifdef RT_USING_HEAP
; f( }5 F* q* Q#if STM32_EXT_SRAM
+ t# Y/ H/ V3 K8 C    rt_system_heap_init((void*)STM32_EXT_SRAM_BEGIN, (void*)STM32_EXT_SRAM_END);
  N9 A& Y( l+ q& s, f& j$ q#else
; l2 v1 A6 q2 u+ D# L#if defined(__CC_ARM) || defined(__CLANG_ARM)  v# j1 J9 G- M9 |: X
    rt_system_heap_init((void*)&Image$$RW_IRAM1$$ZI$$Limit, (void*)STM32_SRAM_END);7 v  @. ?4 N. M) Z
#elif __ICCARM__& o0 A2 K$ ^' i
    rt_system_heap_init(__segment_end("HEAP"), (void*)STM32_SRAM_END);
5 k9 r0 X. I; Q; K#else. p# z$ P6 S+ s! M6 |: g1 s
    /* init memory system */' C, ^6 |! f; b1 L
    rt_system_heap_init((void*)&__bss_end, (void*)STM32_SRAM_END);
. A) z8 |9 o" ^4 @6 `: r( t! @#endif
0 t& z% Z* J. `  P#endif  /* STM32_EXT_SRAM */8 l  m1 @" s- t/ ~" a" [* K" }
#endif /* RT_USING_HEAP */
使用道具 举报 回复
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|RT-Thread开发者社区 ( 沪ICP备13014002号-1

有害信息举报电话:021-31165890 手机:18930558079

© 2006-2019 上海睿赛德电子科技有限公司

Powered by RT-Thread

快速回复 返回顶部 返回列表