如何使用LTIB交叉编译C ++文件

时间:2013-08-05 15:31:55

标签: linux arm cross-compiling

我已经从飞思卡尔(通过Congatec)安装了LTIB,并希望编译一个“hello,world”程序。 gcc给了我本机可执行文件。如何编译我的ARM处理器?

4 个答案:

答案 0 :(得分:6)

您需要为ARM安装交叉编译器。您机器上的gcc是本机编译器,交叉编译器具有不同的前缀,用于确定目标体系结构,操作系统和libc。在您的情况下,目标系统可能是ARM体系结构,正在运行带有GNU libc的Linux内核。

arm-none-linux-gnueabi-gcc -o hello hello.cpp

答案 1 :(得分:4)

运行./ltib -m shell。在此模式下,所有标准工具都设置为允许./configure和其他设置默认为 ARM 构建。从这个shell gcc -o hello hello.cpp将为您创建一个可执行文件。它将为您的 rootfs 设置,无论是 uCLibc 还是 glibc 。您还可以使用外部开源软件包并运行./configure - make周期。

LTIB FAQ中的文档提供了有关使用 LTIB 的更多信息。 LTIB 通常会在 / opt / freescale 目录中安装工具。如果您没有使用自定义编译器,您将在 / opt / freescale 下找到编译器,并可以直接使用它。在此目录中,编译器的名称将类似于arm-none-linux-gnuabi-gcc。对于./ltib -m shell,它的别名为gcc,其他许多标准命令也用于交叉构建。

答案 2 :(得分:1)

查看gcc手册页中的-march = name选项。您将指定的确切体系结构取决于您需要编译的ARM版本。 v5 ARM示例:

gcc -o ARM.exe -march=armv5 source.c

答案 3 :(得分:0)

首先移动到LTIB文件夹。 cd" ltib文件夹" 然后输入ltib shell ./ltib -m shell 然后使用编译 gcc -static"程序名称" .c -o"程序名称" .sabre 然后运行该命令 文件"程序名称" .sabre