`
mmdev
  • 浏览: 13218886 次
  • 性别: Icon_minigender_1
  • 来自: 大连
文章分类
社区版块
存档分类
最新评论

Galaxy Nexus (GSM): Compile CyanogenMod 9 (Linux)

 
阅读更多


How to compile CyanogenMod for Maguro (GSM Galaxy Nexus).

This how-to was written for Ubuntu 12.04 for Maguro running CyanogenMod 9.x (Ice Cream Sandwich), on 12 April 2012.

Contents

[hide]

Prepare the Build Environment

NOTE: These steps only need to be performed once. If the build environment is already prepared, skip to Copy proprietary files.

Install the ADB

Install the Android SDK.

Install the Build Packages

Install using preferred package manager:

For 64-bit systems:

git-core gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-dev:i386 g++-multilib mingw32 openjdk-6-jdk pngcrush schedtool tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386

Create the Directories

You will need to set up some directories in your build environment.

To create them:

mkdir -p ~/bin
mkdir -p ~/android/system

Install the Repository

Enter the following to download make executable the "repo" binary:

curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
chmod a+x ~/bin/repo
NOTE: You may need to reboot for these changes to take effect.

Now enter the following to initialize the repository:

cd ~/android/system/
repo init -u git://github.com/CyanogenMod/android.git -b ics
repo sync -j16

Sync Relevant Repositories

NOTE: This only needs to be done the first time after installing the repository. If you have already done this step, you may skip to Copy Proprietary Files.

By default, CyanogenMod 9 only syncs the core android repositories and none of the device or kernel trees to save both bandwidth and time. Run the following command to sync the necessary components for the device:

. build/envsetup.sh && brunch maguro

Copy Proprietary Files

NOTE: This only needs to be done the first time you build. If you have already done these steps, you may skip to Download Prebuilts.

You will need to have a maguro with a working copy of CyanogenMod install and ADB working on the computer. This script will copy the proprietary files from the device.

Connect the device to the computer and ensure that ADB is working properly.

cd ~/android/system/device/samsung/maguro/
./extract-files.sh
NOTE: If some hardware isn't functioning properly, you may need to run the above command again for updated proprietary files.

Download Prebuilts

Download Prebuilts needed by the build:

~/android/system/vendor/cm/get-prebuilts

Building CyanogenMod

Check for updates

First, check for updates in the source:

cd ~/android/system/
repo sync

Configure Build & Compile

Now, the environment must be configured to build and the ROM compiled, from code, for the maguro.

. build/envsetup.sh && brunch maguro

Install

  1. Copy your .zip file from ~/android/system/out/target/product/maguro/update.cm-XXXXX-signed.zip to the root of the SD card.
    Optional: Download Google Apps for CyanogenMod 9 and place it on the root of the SD card.
  2. Flash both of these .zip files from recovery.
分享到:
评论

相关推荐

    Samsung Galaxy S: Compile CyanogenMod (Linux)

    标题中的“Samsung Galaxy S: Compile CyanogenMod (Linux)”指的是在Linux操作系统上为Samsung Galaxy S手机编译CyanogenMod的过程。CyanogenMod是一种基于Android开源项目的第三方操作系统,它提供更多的自定义...

    compile_protobuf_protobuf:compile_protobuf_

    标题"compile_protobuf_protobuf:compile_protobuf_"指的是使用protobuf编译器来处理.proto文件的过程。这个过程涉及到将.proto文件编译成特定编程语言(如C++、Java或Python)的源代码,以便在程序中使用protobuf...

    Android代码-RxBinding

    RxBinding RxJava binding APIs for Android UI widgets from the platform and support libraries. Download Platform bindings: compile 'com.jakewharton.rxbinding2:rxbinding:2.0.0' ...compile

    内存管理作业C++ 提供两个版本:windows平台和linux平台下运行

    2.1 使用compile_shell shell script编译连接:./compile_shell 2.2 使用Makefile文件 编译连接:make 3. 运行生成的可执行文件: ./mainEXE (注意代码注释和输出数据中包含中文,要求linux系统支持中文显示) (通过...

    SpringMVC3.1.2 入门级HelloWorld源码

    [INFO] +- log4j:log4j:jar:1.2.17:compile [INFO] +- org.apache.openejb:javaee-api:jar:5.0-1:provided [INFO] +- javax.faces:jsf-api:jar:1.2_04:provided [INFO] +- javax.servlet:jstl:jar:1.2:provided ...

    lombok-module-jdk10

    > Task :compileJava FAILED /Users/bflint/IdeaProjects/lombok-module-jdk10/src/main/java/module-info.java:2: error: module not found: lombok requires lombok; ^ 1 error FAILURE: Build failed with an ...

    Spring-Security安全权限管理手册

    - `org.springframework.security:spring-security-core:jar:2.0.5.RELEASE:compile`:核心模块,包含了Spring Security的核心类和接口。 - `org.springframework:spring-core:jar:2.0.8:compile`:Spring框架的...

    Android代码-Android-ParallaxSupportView

    compile 'homhomlin.lib:psv-library:1.0.1' or Maven dependency: homhomlin.lib psv-library 1.0.1 API v12 : Gradle dependency: compile 'homhomlin.lib.v12:psv-library:1.0.1' or Maven dependency: ...

    maven0000000000.txt

    周期: a. clean 生命周期:clean b. default 生命周期: compile,test-compile,test,package,install c.... d. 不同的生命周期可以一起执行命令,例如先clean再compile...compile<- test-compile<- test <- package<- install

    maven-thrift-plugin-0.1.10

    maven插件 maven-thrift-plugin-0.1.10

    galaxy-fds-sdk-java:适用于小米文件数据存储的Java SDK

    Galaxy FDS Java SDK用户指南正在安装从github下载源代码,构建jar并将其安装到本地Maven存储库(或部署到中央Maven存储库)。 github链接: : mvn clean package install 如果使用Maven进行管理,则用户可以下载...

    compile_Linux_kernel.rar_compile linux kernel_linux 2.2.5_编译内核_进

    内核,是一个操作系统的核心。它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性...本文将以RedHat Linux 6.0(kernel 2.2.5)为操作系统平台,介绍在Linux上进行内核编译的方法。

    Android代码-kohttp

    compile(group = "io.github.rybalkinsd", name = "kohttp", version = "0.7.1") gradle groovy DSL: compile 'io.github.rybalkinsd:kohttp:0.7.1' maven: io.github.rybalkinsd kohttp 0.7.1 Usage Sync ...

    maven和nexus文档

    3. 构建过程:Maven通过预定义的生命周期(如clean、compile、test、package、install、deploy)来简化构建流程,常用命令有`mvn clean`(清理项目)、`mvn compile`(编译源代码)、`mvn test`(运行测试)等。...

    Android代码-SlidingLayout

    compile 'homhomlin.lib:sldinglayout:0.9.0' or Maven dependency: homhomlin.lib sldinglayout 0.9.0 依赖: 如果你的项目需要支持API V9,你需要添加以下依赖: compile 'com.nineoldandroids:library:2.4.0'...

    linux-ftpd-0.17安装包

    (1) 报错内容:Compiler arm-linux-gcc does not exist or cannot compile C; try another. (2)报错内容:ftpcmd.y:108: error: array type has incomplete element type 4、安装ftpd,将ftpd拷贝到/usr/sbin中,...

    iperf3 static compile for arm-linux

    "iperf3 static compile for arm-linux"这个标题表明我们将讨论如何在基于ARM架构的Linux系统上对iperf3进行静态编译。 静态编译是将所有依赖的库文件都编译进可执行文件中,使得最终生成的程序不依赖系统环境,...

    SublimeJavaCompiler:Sublime 2 Text 和 Sublime 3 Text 的 Java 编译器包

    JavaC: Compile Current File JavaC: Compile & Run Current File JavaC: Compile Current Project JavaC: Compile & Run Current Project JavaC: Generate Jar Package For Project JavaC: Generate & Run Jar ...

Global site tag (gtag.js) - Google Analytics