Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發實例 >> 在32位的機器上編譯Android

在32位的機器上編譯Android

編輯:Android開發實例

從Android 2.2之後,編譯需要在64位的環境下進行。

如果想在32位的環境下編譯,需要做一點修改。

 

如下所示:

 

1. 修改<src>/build/core/config.mk

找到下面的代碼,

 

  1. ifeq ($(HOST_OS),darwin)  
  2. # Mac OS'' screwy version of java uses a non-standard directory layout  
  3. # and doesn''t even seem to have tools.jar.  On the other hand, javac seems  
  4. # to be able to magically find the classes in there, wherever they are, so  
  5. # leave this blank  
  6. HOST_JDK_TOOLS_JAR :=  
  7. else 
  8. HOST_JDK_TOOLS_JAR:= $(shell $(BUILD_SYSTEM)/find-jdk-tools-jar.sh)  
  9. endif 

在其後添加如下代碼:

 

  1. # Is the host JDK 64-bit version?  
  2. HOST_JDK_IS_64BIT_VERSION :=  
  3. ifneq ($(filter 64-Bit, $(shell java -version 2>&1)),)  
  4. HOST_JDK_IS_64BIT_VERSION := true 
  5. endif 

參見https://review.source.android.com/#patch,sidebyside,23134,1,core/config.mk

 

2. 修改<src>/build/core/main.mk

找到下面的代碼,把它們注釋掉,或刪除掉。

 

  1. ifeq ($(BUILD_OS),linux)          
  2. build_arch := $(shell uname -m)       
  3. ifneq (64,$(findstring 64,$(build_arch)))         
  4. $(warning ************************************************************)  
  5. $(warning You are attempting to build on a 32-bit system.)        
  6. $(warning Only 64-bit build environments are supported beyond froyo/2.2.)  
  7. $(warning ************************************************************)  
  8. $(error stop)         
  9. endif         
  10. endif 

參見https://review.source.android.com/#patch,sidebyside,23134,1,core/main.mk

 

好了,現在就可以在32位的環境下進行編譯了。

 

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved