不同版本gcc編譯編譯相同kernel source code 的問題

前一段時間,針對公司的設備(使用486sx的cpu,不帶浮點運算單元,編譯kernel的時候需要模擬FPU)在Fedora11上進行編譯了一個486的kernel 在設備上運行,基本測試都OK,不過最近客戶反應有問題,問題是計算三角函數的結果和有FPU的設備相差很大,我自己安裝好系統測試,結果確實是。很奇怪阿,難道是浮點運算模擬出錯了? 公司另外一個部門也有一個使用相同CPU的板子,於是將它們的板子運行起來看看,看看他們的板子浮點運算是不是好的,奇怪,怎麼他們的就是好的。當我相信詢問他們是如何編譯的,詢問中發現,他們是在Fedora 8 上編譯通過的。難道是這個問題,只能以事實說話了。重新在Fedora 8 下編譯,果然三角函數計算結果就正常了,看來不同的gcc 版本對 kernel 的編譯影響還是挺大的,想想 可能是因爲 Fedora 8 的gcc 還是針對 i386的(雖然不一定能在386上面運行),Fedora 11是i686的。這應該就是不同吧!

發佈了40 篇原創文章 · 獲贊 5 · 訪問量 16萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章