【问题标题】:How to install cross compiler (on ubuntu 12.04 LTS) for microprocessor SA1100?如何为微处理器 SA1100 安装交叉编译器(在 ubuntu 12.04 LTS 上)?
【发布时间】:2013-02-17 13:14:33
【问题描述】:

谁能告诉我如何为 SA1100 微处理器安装交叉编译器(编程语言 C)?我有 ubuntu 12.04 LTS。我是 Linux 的完全新手,我昨天刚安装了 Ubuntu。我需要一个名为“arm-unknown-linux-gnu-gcc”但不知道该怎么做的 GCC 编译器的特殊变体。

有人可以帮帮我吗?

【问题讨论】:

  • 您尝试apt-get install gcc-arm-linux-gnueabiapt-get install gcc-4.7-arm-linux-gnueabi 了吗?我还强烈建议能够为您的 Linux 系统编译一个普通的 C 程序(即学习 gccmake ... 命令的基础知识以及如何使用一些编辑器,如 emacsgedit ... ) 并且您想要的交叉编译器还取决于在您的 SA1100 硬件板上运行的系统。
  • 我确实知道如何编译一个普通的 C 程序。那是gcc -o hello hello.c。我已经尝试过apt-get install gcc-arm-linux-gnueabi 并安装了,但交叉编译仍然不起作用。我想用(例如)arm-unknown-linux-gnu-gcc -O2 -Wall -o hello hello.c 交叉编译程序,但它告诉我找不到该命令。你能告诉我make 是干什么用的吗?谢谢,感谢您的帮助!
  • 你应该实际使用 gcc -Wall -g hello.c -o hello ;关于make,阅读gnu.org/software/make/manual/html_node/index.html 并使用arm-linux-gnueabi-gcc 程序作为您的交叉编译器
  • 附加提示,使用dpkg -L gcc-arm-linux-gnueabi了解包gcc-arm-linux-gnueabi安装的文件
  • @BasileStarynkevitch 你可能想发布一个答案。

标签: linux gcc ubuntu compiler-construction arm


【解决方案1】:

正如我在 cmets 中所说,试试

apt-get install gcc-arm-linux-gnueabi 

apt-get install gcc-4.7-arm-linux-gnueabi

我还强烈建议能够为您的 Linux 系统编译一个普通的 C 程序(即学习gccmake ... 命令的基础知识以及如何使用一些编辑器,如emacsgedit ...) 并且您想要的交叉编译器还取决于在您的 SA1100 硬件板上运行的系统。不要忘记将 -Wall 传递给任何 GCC 编译。您可能希望能够调试您的程序(在编译时将-g 传递给GCC,并使用gdb 调试器)。当你的程序运行良好时,用-O2编译它,让GCC优化它的机器码。

学习使用 GNU make -e.g.通过读取documentation 来编写Makefile-s- 并使用arm-linux-gnueabi-gcc 作为交叉编译程序。 (当make 没有足够的帮助时,您可能想使用remake 来调试您的Makefile-s)

您可以获取与软件包一起安装的文件列表,例如dpkg -L gcc-arm-linux-gnueabi

一个可执行的 ARM 交叉编译程序很可能需要一个 Linux 内核,至少在 ARM 主板上带有一些 libc(或静态链接),并且您需要某种方式将二进制程序从 Linux 桌面传输到ARM 硬件。

【讨论】:

    【解决方案2】:

    添加 ppa:https://launchpad.net/gcc-arm-embedded 两者的源代码相同。目前支持 Ubuntu 10.04/12.04/13.04/13.10/14.04 32 位和 64 位。

    Launchpad PPA 的详细解释可以在https://help.launchpad.net/Packaging/ 找到。该网站解释了如何设置 PPA 以及如何添加现有 PPA 并从中安装软件。

    以下是在 14.04 之前的 Ubuntu 上从此 PPA 安装工具链的快速步骤。打开终端并输入:

    1. sudo add-apt-repository ppa:terry.guo/gcc-arm-embedded
    2. sudo apt-get update
    3. sudo apt-get install gcc-arm-none-eabi

    要删除已安装的工具链,只需:

    sudo apt-get remove gcc-arm-none-eabi

    要更新工具链,只需重复步骤 2 和 3。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-01-14
      • 2013-11-22
      • 2013-11-09
      • 1970-01-01
      • 1970-01-01
      • 2014-03-08
      • 2013-07-23
      • 1970-01-01
      相关资源
      最近更新 更多