我正在使用 i686 机器作为构建平台为 ARM 设置交叉编译工具链。
我已经能够使用工具链来编译一个基本的 C 程序并在目标 ARM 设备上运行它,但是由于 Newlib 只会构建静态库,因此文件大小最终变得太大。
我使用的 GCC 版本和 Newlib 本身都是使用该--enable-shared
选项配置的——但在构建时似乎只是忽略了这一点。
我在 Newlib 文档中读到,如果主机和目标机器都是 i*86 机器,那么 Newlib 将使用 libtool 构建自己,它会自动构建共享和静态库 - 但这对 ARM 目标没有多大帮助!
有谁知道将 Newlib 构建为 ARM 设备的共享库而不仅仅是静态的方法?
鉴于 Newlib 旨在用于嵌入式系统,令我惊讶的是,它只能在用于英特尔机器上的本机编译时生成共享库。
谢谢!