This is pulled from the CyanogenMod site and modified to build for the Cliq/Dext
Prepare the Build EnvironmentEdit
NOTE: You only need to do these steps the first time you build. If you previously prepared your build environment, skip to Copy proprietary files
Install the ADBEdit
Install the Android SDK.
Install the Build PackagesEdit
Install using the package manager of your choice:
For 32-bit & 64-bit systems:
sudo apt-get install git-core gnupg flex bison gperf libsdl1.2-dev libesd0-dev libwxgtk2.6-dev squashfs-tools build-essential zip curl libncurses5-dev zlib1g-dev sun-java6-jdk pngcrush schedtool
For 64-bit only systems:
sudo apt-get install g++-multilib lib32z1-dev lib32ncurses5-dev lib32readline5-dev gcc-4.3-multilib g++-4.3-multilib
NOTE: gcc-4.3-multilib g++-4.3-multilib is no longer available for Ubuntu 11.04 64-bit, but should still build without issue.
NOTE: On Ubuntu 10.10, and variants, you need to enable the parter repository to install sun-java6-jdk:
add-apt-repository "deb http://archive.canonical.com/ maverick partner"
Create the DirectoriesEdit
You will need to set up some directories in your build environment. To create them:
mkdir -p ~/bin mkdir -p ~/android/system
Install the RepositoryEdit
Enter the following to download make executable the "repo" binary:
curl http://android.git.kernel.org/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 gingerbread repo sync -j16
Copy proprietary filesEdit
NOTE: This only needs done the first time you build. If you have already done these steps, you may skip to Download RomManager. You will need to have a Morrison 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/motorola/morrison/ ./extract-files.sh
NOTE: If some hardware isn't working, like camcorder or FM radio, you will need to find the updated prop blobs.
NOTE: This only needs to be done when an update to RomManager is released. If you are-up-to date, you may skip to Building CyanogenMod. Download RomManager which is needed by the build:
Check for updatesEdit
First, check for updates in the source:
cd ~/android/system/ repo sync
Configure Build & CompileEdit
Now, the environment must be configured to build and the ROM compiled, from code, for the Morrison.
. build/envsetup.sh && brunch morrison
- Copy your .zip file from ~/android/system/out/target/product/morrison/update.cm-XXXXX-signed.zip to the root of the SD card.
- Optional: Download Google Apps for CyanogenMod 7 and place it on the root of the SD card.
- Flash both of these .zip files from recovery.
Want to try something fun? For a generic Android build:
. build/envsetup.sh lunch generic_morrison-eng make -jX bacon
Where "X" is the number of jobs make will build simultaneously (generally, this should be the number of cores your processor has).
With this configuration, you will produce a generic Android OS. No CM apps. The only issue is that settings will have an inoperable "CyanogenMod Settings" selection.