1、我在Keil中先生成了一个.lib库文件,直接复制到RTT-studio中进行编译,但是出现了找不到相关函数错误。如下图:

2、然后修改了库文件的包含路径,如下图:

没提示函数错误了,但缺提示找不到库文件路径。
c:/rt-threadstudio/repo/extract/toolchain_support_packages/arm/gnu_tools_for_arm_embedded_processors/5.4.1/bin/../lib/gcc/arm-none-eabi/5.4.1/../../../../arm-none-eabi/bin/ld.exe: cannot find -lF:/ZNY/Smart_XONE/STM32L496ZG_V20200720/STM32L496ZG_V20200720/applications/MAL/Delay_MAL/Delay_MAL.lib
collect2.exe: error: ld returned 1 exit status
make: *** [makefile:107: rtthread.elf] Error 1

在RTT-studio中怎样把自己的.c文件生成.a或.so的库文件?
RTT-studio能不能完善这个自动生成库文件的功能啊?
@chenyaxing
现在在RTT-studio中生成.a库文件可以了,但是好像如果原来的.c文件中包含如:
INIT_BOARD_EXPORT(fn) 申明的初始化函数、
INIT_PREV_EXPORT(fn) 申明的初始化函数、
INIT_DEVICE_EXPORT(fn) 申明的初始化函数、
INIT_COMPONENT_EXPORT(fn) 申明的初始化函数、
INIT_ENV_EXPORT(fn) 申明的初始化函数、
INIT_APP_EXPORT(fn) 申明的初始化函数、
上述宏初始化的申明的函数,都不能在库文件中执行(比如:出现找不到一些设备的提示,证明这些宏没执行到),同时最终的可执行文件(用.a库文件链接的)比用源文件(用.c文件编译链接的)的文件大小要小很多。
这种情况是怎么回事?如果想不动源文件(.c文件),要如何避免这些问题?
请大神指点。
@chenyaxing 我按照你的这种方式添加了CMSIS-DSP的.a库文件,但是在链接时报错
@QPLover 你添加得是不是不对,看看添加a库的方法
https://www.rt-thread.org/document/site/#/development-tools/rtthread-studio/um/studio-user-manual?id=%e9%85%8d%e7%bd%ae%e5%a4%96%e9%83%a8%e4%ba%8c%e8%bf%9b%e5%88%b6%e5%ba%93%e6%96%87%e4%bb%b6