请问怎么判断Keil编译时用到的基础库名字?

2019-07-14 16:46发布

怎么判断Keil编译时用到的基础库名字,在Linker选项里好像没有体现的。include是-I中有,而库的路径怎么判断?
ARMARMCClibarmlib下面一堆.l .b的文件,怎么和CPU类型联系起来?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
youxi8745
1楼-- · 2019-07-14 20:07
自己包含啊
Xavier_1995
2楼-- · 2019-07-14 22:22
 精彩回答 2  元偷偷看……
胡德胜快回答
3楼-- · 2019-07-15 03:35
默认 ARMLIB
--libpath 可以指定.
手册上有描述:
The libraries are installed in subdirectories of the lib directory:

armlib
Contains the variants of the ARM C library, the floating-point arithmetic library (fplib), and the math library (mathlib).

cpplib
Contains the variants of the Rogue Wave C++ library (cpp_*) and supporting ARM C++ functions (cpprt_*), referred to collectively as the ARM C++ Libraries.

The accompanying header files for these libraries are installed in the inc directory.

The environment variable ARMCCnnLIB must be set to point to the lib directory, or if this variable is not set, ARMLIB. Alternatively, use the --libpath argument to the linker to identify the directory holding the library subdirectories. You must not identify the armlib and cpplib directories separately because this directory structure might change in future releases. The linker finds them from the location of lib.
jiecai5388
4楼-- · 2019-07-15 08:25
感谢回复,知道是自动包含。问题是armlib下面有很多类似的lib文件,估计linker会根据cpu类型连接不同的lib,我想把.l和.b文件按CPU类型归下类。比如Cortex M3会关联哪些.l的文件。
胡德胜快回答
5楼-- · 2019-07-15 09:50
jiecai5388 发表于 2018-10-19 16:02
感谢回复,知道是自动包含。问题是armlib下面有很多类似的lib文件,估计linker会根据cpu类型连接不同的lib,我想把.l和.b文件按CPU类型归下类。比如Cortex M3会关联哪些.l的文件。

有的应该跟lib的实现方法有关.
The default floating-point arithmetic libraries fz_* and fj_* do not use static data and are always reentrant. However, the f_* and g_* libraries do use static data.
(摘自手册)
*.b , *.l 应该是大端小端.

一周热门 更多>