gcc编译链中i686和x86-64有什么区别?

关注嘉友创科技公众号

个人记录,请不要当成事实!!(已解决,最后可以当成事实

 

暂时理解成:来自网络

1、i686和x86_64有什么不同?

2、linux系统中的i386/i686和x86_64有什么区别

回答

 

i386对应的是32位系统、而i686是i386的一个子集,i686仅对应P6及以上级别的CPU,i386则广泛适用于80386以上的各种CPU;x86_64主要是64位系统。

 

i686 在 pentun II 以后的 Intel 系列 CPU ,及 K7 以后等级的 CPU 都属于这个 686 等级!

而x86_64就是64位的x(代表不确定。可以是3、4、5、6、)86,是个统称,如果是i686_64也是属于x86_64的。

 

待考虑

 

找到答案

 

gcc编译链中i686和x86-64有什么区别?_第1张图片

中有很多种交叉编译器,我们只需要关注这两种: gcc-linaro-4.9.4-2017.01-

i686_arm-linux-gnueabihf.tar.tar.xz gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz

第一个是针对 32 位系统的,第二个是针对 64 位系统的。大家根据自己所使用的 Ubuntu 系统类

型选择合适的版本,比如我安装的 Ubuntu 16.04 64 位系统,因此我要使用 gcc-linaro-4.9.4-

2017.01-x86_64_arm-linux-gnueabihf.tar.xz

 

这个编译链带的i686或者x86_64和Linux开发板没关系,和宿主的Ubuntu是64还是32有关系。

linux开发板imx6ull是32位

 

1arm 表示这是编译 arm 架构代码的编译器。

2linux 表示运行在 linux 环境下。

3gnueabihf 表示嵌入式二进制接口。

4gcc 表示是 gcc 工具。

你可能感兴趣的:(linux知识点)