ARM 标准C/C++ 运行时库

来源:互联网 发布:淘宝每年的营业额 编辑:程序博客网 时间:2024/04/28 14:26

 

1. 运行时库的路径

指定方式:

(1)      连接选项 –libpath

(2)      环境变量ARMLIB

优先级:

       libpath高于ARMLIB

被指定的路径:

       包含armlib, cpplib的父路径。

 

2. 运行时库的命名格式。

C/C++运行时库格式:

       Root_<arch><fpu><dfmt><stack><entrant>.<endian>

 

Root取值如下:

    c– ANSI C C++ 基本运行时支持。

       f– C/Java的浮点算术运算支持。

       g– IEEE的浮点算术运算支持

       m– 超越类数学函数。

       cpp– 无浮点算数运算的高级C++算数

       cppfp– 有浮点算数运算的高级C++算数

 

arch取值如下:

       a– ARM 运行时库

       t– Thumb运行时库

 

fpu取值如下:

       f– 使用FPA指令集

       v– 使用VFP指令集

       -  - 不使用浮点运算指令

 

dmft取值如下:

       p– 单纯内存模式(endian格式)的双精度格式

       m– 混合内存模式(endian格式)的双精度格式

       -      - 不使用双精度浮点数。

 

Stack取值如下:

       u– 不使用软件的数据栈溢出检查

       s- 使用软件的数据栈溢出检查

       -- 未规定该选项

 

entrant取值如下:

       n– 函数不可重入的。

       e– 函数可重入的。

       --未规定该选项

 

endian取值如下:

       l– little endian

       b– big endian

 

举例说明:

       c_a_se    C运行时库,ARM, 数据栈溢出检查,可重入。

       c_t_un    C运行时库,Thumb, 无数据栈溢出检查, 不可重入。

 

Reference:

       http://infocenter.arm.com/help/topic/com.arm.doc.dui0067d/DUI0067.pdf

       《ARM体系结构与编程》 杜春雷  清华大学出版社


原创粉丝点击