2.1.71. --library_interface=lib

此选项启用与所选库类型兼容的代码的生成。

语法


--library_interface=lib

其中 lib 是下列值之一:

rvct

指定编译器输出使用 RVCT 运行时库。

aeabi_clib90

指定编译器输出使用符合 ARM 嵌入式应用程序二进制接口 (AEABI) 的任何 ISO C90 库。

aeabi_clib99

指定编译器输出使用符合 ARM 嵌入式应用程序二进制接口 (AEABI) 的任何 ISO C99 库。

aeabi_clib

指定编译器输出使用符合 ARM 嵌入式应用程序二进制接口 (AEABI) 的任何 ISO C 库。

选择 --library_interface=aeabi_clib 选项相当于指定 --library_interface=aeabi_clib90--library_interface=aeabi_clib99,具体取决于所使用的源语言选项。

源语言的选项将因所选的命令行选项以及所使用的文件名后缀而异。

aeabi_glibc

指定编译器输出使用符合 AEABI 版本的 GNU C 库。

缺省选项

如果未指定 --library_interface,编译器将采用 --library_interface=rvct

用法

  • 使用 --library_interface=rvct 选项可在链接时利用全套的编译器和库优化。

  • 在链接到符合 ABI 的 C 库时,使用 --library_interface=aeabi_* 形式的选项。 --library_interface=aeabi_* 形式的选项可确保编译器不会生成对 RVCT C 库所提供的任何已优化函数的调用。

示例

当代码调用嵌入式操作系统所提供的函数时,如果该操作系统取代了 RVCT C 库所提供的函数,则将用 --library_interface=aeabi_clib 编译代码,以禁止调用由该操作系统替换的库函数的任何特殊 RVCT 变体。

另请参阅

Copyright © 2007 ARM Limited. All rights reserved. ARM DUI 0348AC
Non-Confidential