linux - 如何为 ARM 交叉编译 autotools 项目?

标签 linux arm cross-compiling gnu-make autotools

我正在寻找交叉编译一个使用 GNU autotools 构建系统的现有库。我在我的主机上安装了一个 Linaro arm-gcc 工具链,我可以直接使用 arm-gcc 编译小程序。

  • 主机: Ubuntu 12.04 Intel x64
  • 目标机器: Ubuntu 14.04 ARM 32位(类似于Raspberry-Pi的板子)

我有一个库源代码,其中包含 configure.ac 和 Makefile.am 文件。我想在主机上编译这段代码并生成可以复制到目标平台的 ARM 二进制文件。

执行此操作的规范方法是什么?

具体而言,我正在寻找适用于使用 arm-linux-gnueabi-gcc 和 autotools 交叉编译的 C 语言“Hello World”应用程序/库的东西。

最佳答案

--build=`./config.guess` --host=arm-linux-gnueabi

可能就足够了,因为它会寻找相应的 ARM 工具链。否则,尝试添加:CC="arm-linux-gnueabi-gcc"

您还可以添加:CFLAGS="-pipe -Wall -O2 ... <other arm-gcc flags>"
以获得更好的代码优化。

关于linux - 如何为 ARM 交叉编译 autotools 项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28205073/

相关文章:

linux - UDEV - 在插入的 USB 闪存驱动器上运行程序

c - C中2个微 Controller 之间的执行同步

assembly - 反汇编时如何对二进制arm指令进行分类

c++ - 使用 minGW 在 Windows 上编译 iPerf2.0.5

python - 如何在python中通过SSH注入(inject)命令?

c++ - 在 Linux Mint 中使用 Code::Blocks 设置 C++

ios - 为 iOS 编译 expat - Command/bin/sh 失败,退出代码为 2

linux - 在 Mac OS X 上构建交叉工具链的最佳方式

java - 如何使用java读取linux中的命名管道(FIFO)

c - 将变量放在特定地址会生成大型二进制文件