【发布时间】:2018-10-13 17:08:27
【问题描述】:
我从https://developer.arm.com/open-source/gnu-toolchain/gnu-rm/downloads 下载了工具链“gcc-arm-none-eabi-6-2017-q2-update-win32-sha1.exe”(Windows)并将其安装在我的 Windows 上10 个人电脑。
安装文件夹在“../share/doc/gcc-arm-none-eabi/”中包含一个release.txt,它告诉:
此版本包括以下项目:
- newlib 和 newlib-nano : git://sourceware.org/git/newlib-cygwin.git 提交 0d79b021a4ec4e6b9aa1a9f6db0e29a137005ce7
“../share/doc/gcc-arm-none-eabi/”中的 readme.txt 还包含:
- C 库使用 *
此工具链发布时包含两个预构建的 C 库,基于 newlib:一个是标准的newlib (libc.a),另一个是 newlib-nano (libc_nano.a) 用于代码大小。
现在我想完全重建“../arm-none-eabi/lib/thumb”中包含的所有 libc.a 和 libc_nano.a
目前我可以使用“gcc-arm-none-eabi-6-2017-q2-update-linux.tar.bz2”在 Ubuntu 上进行构建
$ # Downloaded newlib-cygwin (with corresponding hash) into folder newlib-cygwin
$ mkdir build
$ cd build
$ ../newlib-cygwin/configure --target=arm-none-eabi --disable-newlib-supplied-syscalls
$ make
如何配置 newlib 以构建 libc.a 和 gcc-arm-none-eabi-6-2017-q2-update-linux.tar 中包含的 libc_nano.a 的精确副本。 bz2?
$ # Downloaded newlib-cygwin (with corresponding hash) into folder newlib-cygwin
$ mkdir build
$ cd build
$ ../newlib-cygwin/configure --target=arm-none-eabi --???
$ make
【问题讨论】:
-
你必须按照你想要的方式配置它。如果您想要 newlib 提供的系统调用调用,请不要禁用它们。
../newlib-cygwin/configure --target=arm-none-eabi是否无法在 Windows 上运行?什么错误? -
不,它不会在 Windows 上运行失败,但是使用 cygwin 构建库需要很长时间。是的,对我来说很明显我可以按照自己的意愿配置它,但我喜欢像 GNU ARM 工具链一样配置它。唯一的问题是我不知道在哪里可以找到这个配置选项。
标签: c++ c arm toolchain newlib