c++ - 在gcc中同时使用“-arch i386”和"-arch x86_64"是什么意思?
阿神
阿神 2017-04-17 11:18:42
0
1
558

难道编译出来的结果同时支持x86和x64么

阿神
阿神

闭关修行中......

全部回覆(1)
伊谢尔伦

不知道gcc,但從cpu角度分析:

i386是intel的較早的32位元處理器的名稱,與i486i586等是一個系列的,這個系列也叫x86。而且保持著例如486相容386這種向下相容的特性,指定i386可以做到最廣泛的對32位元處理器的相容性

但是intel在64位的處理器上卻輸給了AMD,AMD基於x86率先推出了兼容32位的64位處理器,而且獲得市場認可,稱為amd64。由於這種64位元的處理器也可以運作在32位元模式下,所以也稱為x86-64

發展到現在其實只有兩個常用的標準,一個是intel的32位標準x86,一個是amd的64位標準amd64(雖然amd64同樣是從x86發展起來的)。

當然intel也有自己的64位元標準稱為IA-64,也就是安騰處理器。

根據我的理解,回答你的問題:
i386編譯的程式的目標CPU平台為32位元相容即可
x86-64編譯的程式的目標平台只能是64位元相容

以上分析僅是個人理解,如有不妥還請指正。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板