交叉編譯qtopia學到的

2021-05-22 02:19:51 字數 840 閱讀 9032

我最初學習linux的時候,學了很多linux的發行版本,最後在組長的推薦和自己的喜好驅使下,選擇了使用slackware,linux的乙個比較古老的發行版本。所以,嵌入式的學習宿主機也是slackware,前一段時間交叉編譯bluez協議棧,雖然遇到了很多的波折,但是還是編譯通過了。

由於,剛開始學習嵌入式,而且正好要應用到專案中去,所以為了快速的開發,我選擇了使用開發板自帶的qtopia2.2,結果讓我很鬱悶,arm-qtopia在slackware根本就編譯不過。看了很多的貼子,幾乎別人編譯的時候都沒有遇到過這樣的問題!無奈!但是經過了幾天的磨成,還是找到了乙個方法,就是檢視編譯日誌(現在才發現真的很重要)。因為沒有經驗,自以為錯誤肯定在日誌的最後出現,所以就直接找最後乙個錯誤,然後在網上搜尋相關錯誤的帖子,可想而知結果又多悲慘!因為根本沒有找到錯誤的更本,更何談解決問題了!

無奈之下,我懷疑板子自帶的arm-qtopia有問題,所以自己重新一步一步的搭建交叉編譯環境!因為編譯的時候,出現了很多錯誤,但是還乙個乙個解決了,但當遇到乙個bad instruction的時候,實在無法解決,於是就想到了以前交叉編譯板子上自帶的arm-qtopia時的編譯日誌,對比一下,我發現日誌的第乙個錯誤(也就是本質的錯誤)也是bad instruction,此時我才懷疑到宿主機的不相容問題,於是找個老師證實一下,他也是這樣和我說的!遂換了個系統,fedora,果然,交叉編譯一遍就通過了。哎。。。。

1,解決問題一定要抓住問題的本質,在解決問題的時候不妨問問自己,「這是問題的關鍵嗎?」

2,不要害怕走彎路,走一遍彎路之後你會發現你對你要解決的問題認識的更清楚了!雖然,走彎路的過程也許是個很讓人鬱悶的過程,但是真的能提高你分析問題解決問題的能力(這種能力也許就是我們拋開課本之後留下來的東西吧)!

編譯 交叉編譯

交叉編譯含義 是指在乙個平台上生成另乙個平台上的可執行 同乙個體系結構可以執行不同的作業系統,同樣乙個作業系統也可以在不同的體系結構上執行 例 常說的x86 linux平台 指inter x86體系結構及linux for x86作業系統 x86 winnt平台 指inter x86體系結構及win...

交叉編譯(2) 交叉編譯鏈

什麼是交叉編譯鏈 明白了什麼是交叉編譯,那我們來看看什麼是交叉編譯鏈。首先編譯過程是按照不同的子功能,依照先後順序組成的乙個複雜的流程,如下圖 那麼編譯過程包括了預處理 編譯 彙編 鏈結等功能。既然有不同的子功能,那每個子功能都是乙個單獨的工具來實現,它們合在一起形成了乙個完整的工具集。同時編譯過程...

交叉編譯 Go 交叉編譯 跨平台編譯

golang 支援交叉編譯,在乙個平台上生成另乙個平台的可執行程式 cgo enabled 0 goos linux goarch amd64 go build main.go cgo enabled 0 goos windows goarch amd64 go build main.go cgo ...