交叉編譯場景分析 arm linux 序

2021-06-11 07:27:18 字數 755 閱讀 7088

交叉編譯場景分析(arm-linux)--序

去年花了乙個多月時間,為arm-linux平台編譯程式庫,其中包括zlib、readline、ncurses、tslib、tinyx、libpng、jpeg、cairo、pango、glib、atk、gtk+、match系列、scim、gpe系列。由於之前沒有經驗,走了不少彎路,雖然從中學到了一些知識,大部分時間都浪費了。最近一些同事和朋友常問我一些關於交叉編譯的問題,我想有必要總結一下,和大家分享一些心得。

什麼是交叉編譯呢?在回答這個問題前,我們先解釋兩個概念:

主機:執行編譯過程的計算機。

目標機:執行編譯結果(可執行檔案)的計算機。

一般情況下,主機和目標機是同一型別的計算機,這就是正常的編譯,沒有什麼好說的。所謂交叉編譯就是在主機上為目標機編譯,比如在pc上編譯,然後在手機上執行,這種編譯就叫交叉編譯。

交叉編譯需要交叉編譯器,不同的目標機(主要是看晶元型別)需要不同的交叉編譯器,比如我們這裡要介紹的arm-linux交叉編譯,所用的交叉編譯器就是arm-linux-gcc系列。

構建乙個交叉編譯器(toolchain),說簡單也簡單,說複雜也複雜。原理上很簡單,實際情況常常比較複雜,原因是編譯器一直處於開發狀態,你要了解某個版本的穩定性,要去找patch。有時候還要看你的運氣好不好,折騰乙個星期才搞定也是很常見的。

在做交叉編譯前,你最好了解autoconf系統工具的用法,遇到問題時,可以快速定位。先找一本autoconf的書看看,可以說是磨刀不識砍柴功,否則後面會浪費更多的時間。

交叉編譯場景分析 arm linux 序

交叉編譯場景分析 arm linux 序 去年花了乙個多月時間,為arm linux平台編譯程式庫,其中包括zlib readline ncurses tslib tinyx libpng jpeg cairo pango glib atk gtk match系列 scim gpe系列。由於之前沒有...

交叉編譯場景分析 arm linux 序

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!交叉編譯場景分析 arm linux 序 去年花了乙個多月時間,為arm linux 平台編譯程式庫,其中包括zlib readline ncurses tslib tinyx libpng jpeg cairo pango glib atk gt...

交叉編譯場景分析 arm linux 序

分享一下我老師大神的人工智慧教程。零基礎!通俗易懂!風趣幽默!還帶黃段子!希望你也加入到我們人工智慧的隊伍中來!交叉編譯場景分析 arm linux 序去年花了乙個多月時間,為arm linux 平台編譯程式庫,其中包括zlib readline ncurses tslib tinyx libpng...