标签:编译 链接文件 运行 查看 ubunt mkdir 权限 工具链 gcc编译
我们已经学习过的编译器是gcc编译器,gcc可以将高级语言转换目标程序。
gcc编译器特点:在Ubuntu编译,在Ubuntu运行。 -> 在同一个平台上编译运行,这个gcc编译器又称之为本地编译。
这个gcc编译器是Ubuntu中自带,gcc所的路径:/usr/bin/gcc。
其实交叉工具链就是一个编译器,但是交叉工具链在Ubuntu中是没有的,所以想使用交叉工具链,就必须要自己移植。
交叉工具链面向平台不是Ubuntu,而是ARM平台。交叉工具链特点:在Ubuntu中编译,在ARM平台运行。
本地编译就是在主机A上编译,在主机A上运行。
交叉编译就是在主机A上编译,在主机B上运行。
sudo mkdir /usr/arm
sudo chmod 777 /usr/arm
tar jxvf arm-2009q3.tar.bz2 -C /usr/arm
/usr/arm/arm-2009q3/bin/arm-none-linux-gnueabi-gcc
gcc test.c -o test -> 生成一个test的文件。
file test -> 查看test这个文件的属性。
test: ELF -> 代表该文件是可以执行。
32-bit -> 32位
LSB executable -> 代表当前该文件可以执行的。
Intel 80386 -> (x86平台),说明该文件只能在x86平台运行。
/usr/arm/arm-2009q3/bin/arm-none-linux-gnueabi-gcc test.c -o test -> 生成一个test的文件。
file test -> 查看test这个文件的属性。
test: ELF -> 代表该文件是可以执行。
32-bit -> 32位
LSB executable -> 代表当前该文件可以执行的。
ARM -> (ARM平台),说明该文件只能在ARM平台运行。
gec@ubuntu:/usr/arm/arm-2009q3/bin$ sudo ln -s arm-none-linux-gnueabi-gcc arm-linux-gcc
结果:
lrwxrwxrwx 1 root root 26 Jul 18 02:12 arm-linux-gcc -> arm-none-linux-gnueabi-gcc
-rwxr-xr-x 2 gec gec 207948 Oct 16 2009 arm-none-linux-gnueabi-gcc
标签:编译 链接文件 运行 查看 ubunt mkdir 权限 工具链 gcc编译
原文地址:https://www.cnblogs.com/zjlbk/p/11209448.html