之前構(gòu)建了在Linux下進(jìn)行stm32開發(fā)的環(huán)境,用的是arm-none-eabi-gcc這個(gè)編譯器。最近重裝了ubuntu,,升級(jí)到了14.04,,發(fā)現(xiàn)不能用這個(gè)gcc了,,提示沒(méi)有那個(gè)文件或目錄,。發(fā)現(xiàn)原來(lái)下的那個(gè)gcc竟然是32位的,,而我的ubuntu是64位的,,之前能用是因?yàn)樵谥暗南到y(tǒng)裝了lib32這個(gè)包,,可以兼容32位軟件,。想再裝一下這個(gè)包,發(fā)現(xiàn)已經(jīng)不支持了,。64位確實(shí)該成為主流了,,可是還是有很多軟件沒(méi)跟上。就如這個(gè)arm-gcc,,提供下載的只是32位,。今天我就來(lái)編譯一個(gè)64位下可以運(yùn)行的arm-gcc. 個(gè)人原創(chuàng),轉(zhuǎn)載請(qǐng)注明原文出處,,并保留原文鏈接: http://www./2014/04/28/compile_arm_gcc_for_linux_x86_64_amd64/ 我的環(huán)境: UBUNTU 14.04 64 一 首先是下載gcc源碼: https:///gcc-arm-embedded/+download 下載里面的src包解壓,;進(jìn)入到src目錄,把所有的壓縮包再解壓,。 二 安裝編譯需要的工具:
最后那個(gè)mingw-w64是可以是編譯處理的可執(zhí)行文件為window下可運(yùn)行的,,即exe文件。如果gcc要用在window下就安裝這個(gè),。 三 編譯:
因?yàn)槲覀儾皇且幾g到window下的,,所有添加了參數(shù)–skip_mingw32 然后就是等待編譯完成了。 這個(gè)我出現(xiàn)了幾個(gè)錯(cuò)誤: 【1】
查了一下,,這個(gè)binutils的bug,,在最新版已經(jīng)解決,果斷下載最新的binutils包,,替換就可以了,。 【2】
這是無(wú)法生成pdf文件,應(yīng)該是pdf太大了,。這里我們并不需要pdf文檔,。所以用下面語(yǔ)句跳過(guò):
等待編譯完成后,我們需要的gcc,在install-native文件夾里面,;這個(gè)就可以直接在64位系統(tǒng)上運(yùn)行嘍,,不用再裝lib32。是適合拋棄lib32了,。哈哈,,有源碼就是好。 安裝: 在.bashrc添加:
等明天我把它上傳,,共享起來(lái),。
|
|