7.31. 库符号重定位到指定段方法
Overview
介绍如何将库代码定位到指定段。
7.31.1. 操作流程
为了节省内存或者提升性能, 用户想把整个库例如orig_libx.a文件的全部代码定位到内部ram或者flash或者sdram:
新建一个批处理, 执行
tools/utils/
目录下override-seg.exe --input orig_libx.a --output libx.a --code_seg ".libx.text" --const_seg ".libx.rodata"
在对应cpu目录下的库目录下(如:
include_lib/liba/wl82
) 把orig_libx.a
替换libx.a
如果芯片封装有SDRAM, 想把库代码放置SDRAM运行的情况,在对应cpu目录下(如:
cpu/wl82/
)的sdk_ld_sdram.c
配置如下图:如果芯片封装有SDRAM, 想把库代码放置内部ram运行的情况,在对应cpu目录下(如:
cpu/wl82/
)的sdk_ld_sdram.c
配置如下图:如果芯片封装没有SDRAM, 想把库代码放置内部ram运行的情况,在对应cpu目录下(如:
cpu/wl82/
)的sdk_ld_sfc.c
配置如下图:如果芯片封装没有SDRAM, 想把库代码放置FLASH运行的情况,在对应cpu目录下(如:
cpu/wl82/
)的sdk_ld_sfc.c
配置如下图: