Android build error

from:http://music.573114.com/Blog/Html/942E/244932.html

最近在編譯更新過的4.0項目,之前都編譯的好好的,今天卻出現了下面的error:

target SharedLib: libwebcore (out/target/product/xxxx/obj/SHARED_LIBRARIES/libwebcore_intermediates/LINKED/libwebcore.so) collect2: ld 以信號 9 [已殺死] 退出。


看樣子是文件都已經編譯好了,只是在要去link庫的時候出錯,collect2: ld 以信號 9 [已殺死] 退出,像是內存不足;

先看了下webcore最近的幾次修改,只是很普通的代碼修改,沒有mk文件相關的變動,所以出問題的機率不大;

之後就懷疑是gcc編譯器的問題,看了下使用的gcc,版本是4.3,換成高版本試了一下,4.5和4.4都還是同樣的編譯錯誤;

所以最後懷疑,是自己的ubutu系統問題,collect2: ld 以信號 9 [已殺死] 退出,這裏的信號9我不太瞭解是什麼意思,網上查了一下,貌似是說數組過大,並不具體;我知道信號7錯誤是指內存太小,所以嘗試去看下內存;

free -m

root@desktop-ubuntu:~# free -m
             total       used       free     shared    buffers     cached
Mem:          1976       1916         60          0        718        523
-/+ buffers/cache:        674       1302
Swap:         256        0        256

汗啊,我的swap分區才256M,系統是用wubi裝的,swap分區是自動設置的,我一直用的好好的 ,沒出啥問題,就一直沒管,看來ubuntu裝完還是需要改下這個swap空間的。

我的內存是2G的,所以把swap空間提升到2G後,libwebcore順利編譯通過;

swap空間提升步驟:

1. cd /host/ubuntu/disks/
2. sudo swapoff swap.disk
3. sudo rm swap.disk
4. sudo dd if=/dev/zero of=swap.disk bs=1M count=2k (創建2G的swap, 這步比較慢)
5. sudo mkswap -f swap.disk
6. sudo swapon /host/ubuntu/disks/swap.disk (這步更慢,大概1分鐘不到)
至此運行free命令,應該看到swap已經和內存一樣大了


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章