1. 程式人生 > >android -x86 編譯中遇到的問題

android -x86 編譯中遇到的問題

錯誤1:

build/core/base_rules.mk:69: unusual tags systembuilder on badblocks at external/e2fsprogs/misc
target Dex: framework
target SharedLib: libwebcore (out/target/product/generic_x86/obj/SHARED_LIBRARIES/libwebcore_intermediates/LINKED/libwebcore.so)
make: *** [out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/classes.dex] Killed
make: *** Waiting for unfinished jobs....


 這個問題鬱悶了我好久。究其原因, 主要是系統的記憶體太小了。之前N次都是在這裡卡死的, 系統直接卡住不動了, 沒辦法剛開始只能關(虛擬機器)電源

然後一次次的來,因為這個問題。 公司電腦裡德原始碼也擱置了好久。配置沒家裡的本本好啊, 所以就指望家裡的新本本,無耐家裡的本本也不給裡。沒辦法解決吧

差了好久, 不知道如何查到的

網上說是新建一個交換區 ,

 sudo  dd if=/dev/zero of=/opt/other/swapfile bs=1024 count=2048K    
 sudo mkswap /opt/other/swapfile		#建立分割槽
 sudo swapon /opt/other/swapfile		#啟用分割槽
 swapon -s
Filename                Type        Size    Used    Priority
/opt/other/swapfile                     file        524280    0    -1

        

# 注意count的單位化是K (不是KB) 這樣子便建立了一個1024x512k的交換分割槽

也可以是M 。

注意該交換區 建議設為2G以上, 因為我剛開始設了1024*512k即 512M。 重新make的時候

又卡死了、


如果要刪除該交換分割槽,則修改 /etc/fstab 將下列資訊刪掉

# swap was on /dev/sda5 during installation
UUID=38a8f635-910b-4f66-bb1c-b219ca2809c3 none            swap   

刪掉以上資訊,然後刪掉交換區 rm -r /opt/other/swapfile  

注意如果不修改上述檔案的話根本刪不掉

2問題:

make: *** [out/target/product/generic_x86/obj/STATIC_LIBRARIES/libmincrypt_intermediates/sha.o] Error 1

-----------------------------
解決辦法
bionic/libc/include/byteswap.h
change
#include <endian.h>
to
#include <sys/endian.h>

make: ***  libgljni_intermediates/

3:  

.......  gl_code.o] Error 1 


 (該錯誤,具體忘記記錄了。。不好意思,反正我搜索的時候按照 gl_code.o  error 關鍵字搜尋沒怎麼查到有用的資訊)

這是由於ndk中sample的一個工程(名字是gl**具體不記得啦)有問題。 果斷刪掉, 因為不知道如何改ndk的sample原始碼。。

問題解決。

至此make成功