歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Ubuntu 11.04 32bit 編譯Android 2.3源碼

Ubuntu 11.04 32bit 編譯Android 2.3源碼

日期:2017/2/28 16:07:30   编辑:Linux教程

最近在自己的機器上配置Android 2.3的編譯環境,由於之前安裝的32位Ubuntu系統,直接升級到11.04,懶得重裝64位的系統,所以編譯時遇到了不少問題:

1.Makefile中編譯環境的檢查過不去:提示安裝64位系統

相關閱讀:Ubuntu 11.04 64位編譯Android 2.3 源碼(姜餅版本) http://www.linuxidc.com/Linux/2011-08/41223.htm

可以把操作系統的檢查部分修改為

ifneq (64,$(findstring 64,$(build_arch)))

#line below is add to compatible 32bit system
ifneq (i686,$(findstring i686,$(build_arch)))
$(warning ************************************************************)
$(warning You are attempting to build on a 32-bit system.)
$(warning Only 64-bit build environments are supported beyond froyo/2.2.)
$(warning ************************************************************)
$(error stop)
endif
endif

www.linuxidc.com或者干脆把check操作系統這一部分干掉。

2.編譯過程中提示找不到libz.a和libz.so

/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../libz.so when searching for -lz
/usr/bin/ld: skipping incompatible /usr/lib/gcc/x86_64-linux-gnu/4.4.5/../../../libz.a when searching for -lz
/usr/bin/ld: skipping incompatible //usr/lib/libz.so when searching for -lz
/usr/bin/ld: skipping incompatible //usr/lib/libz.a when searching for -lz
/usr/bin/ld: cannot find -lz
collect2: ld returned 1 exit status

百度了一下,多是安裝lib32z1-dev,我在命令行裡sudo apt-get install lib32z1-dev,卻提示E: 未發現軟件包 lib32z1-dev;

應該安裝lib64z1-dev,sudo apt-get install lib32z1-dev,在新立得軟件包管理器中也可以安裝。

安裝成功後可以繼續編譯。

Copyright © Linux教程網 All Rights Reserved