1. 程式人生 > >[原]NDK程式在虛擬機器上執行出現signal 4 (SIGILL), fault addr 錯誤的原因及解決方法

[原]NDK程式在虛擬機器上執行出現signal 4 (SIGILL), fault addr 錯誤的原因及解決方法

終於到了移植的最後一步 ,但是編譯出來的SO檔案加入工程後在虛擬機器上總是無法執行,檢視DDMS發現報錯

 

百思不得其解,想為啥會這樣呢,因為這個測試程式碼用NDK直接編譯成功執行的,為啥用交叉編譯就不行呢?

後來突然記得自己看過的這篇文章 突然發現,自己編譯平臺是ARMv7 而 虛擬機器的CPU是ARMv5的~~原來如此!故將原程式放到真機上,執行成功,內流滿面啊~~終於移植成功了!

過一段時間再寫一下關於現成的第三方庫移植到Android上的文章吧。暫時以VTK VXL 這兩個庫為例咯~不過其實我也是各種不懂,所有東西都是經驗之談。。。。額額 還要努力學習啊!