After trying to build a working model for the nook color I have noticed some guides that are incomplete, hard to understand for beginners. I am going to write up a new guide on building cyanogenmod from source code for the nook color here. You will need to go over these guides listed in the out-links here to get started with your dependencies needed to build. http://wiki.cyanogen...uild_for_encore
Another good link to look over is this link here. I noticed the following, that *making bacon* is not added to these guides in clear detail to finish up making a .zip file for flashing. http://xda-universit...id-from-source. We recommend reading these guides FIRST.
In addition to the tools outlined in this one guide, you will need Oracles Java 7.1 or later to compile. They recommend Oracles Java over other open Java sources so you will have to work with it. You can add Java 1.7 with the code below.
Make sure Oracles Java 1.7 is the default Java on your linux build and not another Java build like Open Java.
Java with later ubuntu or linux builds will have a broken dependency. You can fix it with this command here.
Here are the dependencies needed for building along with a few others you will need. You will need some 32 bit libraries for some of these tools. You WILL have to have a 64 bit linux OS. I recommend Ubuntu.
For later linux and Ubuntu OSes simply add :i386 to the name of the packages you would like to install from the list of dependencies below, if you are using the aptitude package manager on your linux or ubuntu builds. Substitute YUM for Red hat linux operating systems, Pacman for Arch linux instead of aptitude for example. Use your favorite package manager if you have one !
___________________________________
Here is the list of all of the other dependencies needed if you do not have them.
Make sure you have these EXTRA dependencies also in your terminal or bash sessions before building. These are your uboot-mkimage dependencies you will need to create your recovery images in building.
Make sure you have the correct XML Markup language dependences with inputting the following commands in the terminal. I also recommend updating all packages at this point. Whether you want to upgrade is up to you, but its recommended, or you might end up with a broken build.
Now we will pull our build with this command from the github for the encore.
Use the -c flag to pull JUST the current branch if you are wanting to build CM 11.0. Otherwise just omit it and choose your own branches to build with the *lunch* command.
Multi-core processors will issue the -J flag to speed up builds. You will multiply by 2 depending on the cores on your processor. Other-words a 4 core processor will issue -j8, two core processor will issue -j4. The nook color devs recommend staying on -j4 as to not take up bandwidth from the git for others.
If your repo sync hangs, just issue the *killall python* command and start over with issuing the repo sync command.
_________________________________
Make sure you are interfaced now with the nook color when running the adb command in the terminal. You will have to have Android SDK for linux 64 bit to continue. At this link. http://developer.and...ource=weibolife
Run this command in your terminal or shell session to make sure you are interfaced with the nook color.
You should get a number output of your device. Have fun. And stay interfaced with the nook color during brunching and making bacon. Make sure you have the developers options enabled and get a USB debugging prompt enabled on the nook color.
Additional help can be found in box 25 at this link here. You will have to run BOTH the ./extract-files.sh script in the ~/android/system/device/bn/encore directory along with running the . build/envsetup.sh script (different named script). Notice there is a period and space (“. ”) in that command TO this directory: ~/android/system/ before brunching encore with this command. http://forum.cyanoge...or/page__st__20
Problems with getting a .zip in your $OUT directory? This can ALSO be fixed by copying the android-sdk/extras stuff into your vendor tree directory. Remember how the nook color guide we was using was hinting about doing something in the /vendor/ folder? This *stuff* is in your /adt-bundle-linux-x86_64-20131030/sdk/extras you downloaded for linux 64 bit earlier from this link here. http://developer.and...ource=weibolife
While in the ~/android/system/ directory input the following command after running the . build/envsetup.sh script. You can change directories with the cd command or open up a new shell session (terminal).
After you have *brunched* encore, (this method worked for me) you will have to run both scripts again (assuming you might of closed terminal sessions at this point) in your shell session (or terminal) before you will try to *make bacon* to complete your .zip needed in this directory. /home/*****/android/system/out
For multi-core processors add the -J flag to speed up your builds.
__________________________________
If for some reason your brunching build or making bacon builds break, or gives you an error in your shell or terminal, you will have to start over with this command to try again.
____________________
Hope this helps. Credit and shoutouts goes out to the Linux Chixs worldwide. And to the nookie devs. *kiss*. There. Lol. Chant for nookie devs: Yep, yep , pipe it in we went superuser !! Keep brunching the encore guys, I think there is a debugger tool included when you repo synced and pulled files from the git. I think it gets worked back into the cyanogenmod mainline. Added: Phoenix Rising is allowed to learn too !!
Another good link to look over is this link here. I noticed the following, that *making bacon* is not added to these guides in clear detail to finish up making a .zip file for flashing. http://xda-universit...id-from-source. We recommend reading these guides FIRST.
In addition to the tools outlined in this one guide, you will need Oracles Java 7.1 or later to compile. They recommend Oracles Java over other open Java sources so you will have to work with it. You can add Java 1.7 with the code below.
Code:
sudo add-apt-repository ppa:webupd8team/java/
Code:
sudo apt-get update
Code:
sudo apt-get install oracle-java7-installer
Make sure Oracles Java 1.7 is the default Java on your linux build and not another Java build like Open Java.
Code:
sudo apt-get install oracle-java7-set-default
Java with later ubuntu or linux builds will have a broken dependency. You can fix it with this command here.
Code:
sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
Here are the dependencies needed for building along with a few others you will need. You will need some 32 bit libraries for some of these tools. You WILL have to have a 64 bit linux OS. I recommend Ubuntu.
Code:
apt-get install ia32-libs
For later linux and Ubuntu OSes simply add :i386 to the name of the packages you would like to install from the list of dependencies below, if you are using the aptitude package manager on your linux or ubuntu builds. Substitute YUM for Red hat linux operating systems, Pacman for Arch linux instead of aptitude for example. Use your favorite package manager if you have one !
___________________________________
Here is the list of all of the other dependencies needed if you do not have them.
Code:
sudo apt-get update
Code:
sudo apt-get install 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-glx:i386 \
libgl1-mesa-dev g++-multilib mingw32 openjdk-6-jdk tofrodos \
python-markdown libxml2-utils xsltproc zlib1g-dev:i386
Make sure you have these EXTRA dependencies also in your terminal or bash sessions before building. These are your uboot-mkimage dependencies you will need to create your recovery images in building.
Code:
sudo apt-get install uboot-mkimage
Make sure you have the correct XML Markup language dependences with inputting the following commands in the terminal. I also recommend updating all packages at this point. Whether you want to upgrade is up to you, but its recommended, or you might end up with a broken build.
Code:
sudo apt-get update && upgrade
Code:
sudo apt-get install xsltproc
Code:
sudo apt-get install libxml2-utils
Now we will pull our build with this command from the github for the encore.
Code:
repo init -u git://github.com/CyanogenMod/android.git -b cm-11.0
Use the -c flag to pull JUST the current branch if you are wanting to build CM 11.0. Otherwise just omit it and choose your own branches to build with the *lunch* command.
Code:
repo sync -c
Multi-core processors will issue the -J flag to speed up builds. You will multiply by 2 depending on the cores on your processor. Other-words a 4 core processor will issue -j8, two core processor will issue -j4. The nook color devs recommend staying on -j4 as to not take up bandwidth from the git for others.
Code:
repo sync -j4 -c
If your repo sync hangs, just issue the *killall python* command and start over with issuing the repo sync command.
Code:
killall python
_________________________________
Make sure you are interfaced now with the nook color when running the adb command in the terminal. You will have to have Android SDK for linux 64 bit to continue. At this link. http://developer.and...ource=weibolife
Run this command in your terminal or shell session to make sure you are interfaced with the nook color.
Code:
adb devices
You should get a number output of your device. Have fun. And stay interfaced with the nook color during brunching and making bacon. Make sure you have the developers options enabled and get a USB debugging prompt enabled on the nook color.
Additional help can be found in box 25 at this link here. You will have to run BOTH the ./extract-files.sh script in the ~/android/system/device/bn/encore directory along with running the . build/envsetup.sh script (different named script). Notice there is a period and space (“. ”) in that command TO this directory: ~/android/system/ before brunching encore with this command. http://forum.cyanoge...or/page__st__20
Problems with getting a .zip in your $OUT directory? This can ALSO be fixed by copying the android-sdk/extras stuff into your vendor tree directory. Remember how the nook color guide we was using was hinting about doing something in the /vendor/ folder? This *stuff* is in your /adt-bundle-linux-x86_64-20131030/sdk/extras you downloaded for linux 64 bit earlier from this link here. http://developer.and...ource=weibolife
While in the ~/android/system/ directory input the following command after running the . build/envsetup.sh script. You can change directories with the cd command or open up a new shell session (terminal).
Code:
croot
Code:
brunch encore
After you have *brunched* encore, (this method worked for me) you will have to run both scripts again (assuming you might of closed terminal sessions at this point) in your shell session (or terminal) before you will try to *make bacon* to complete your .zip needed in this directory. /home/*****/android/system/out
Code:
make bacon
For multi-core processors add the -J flag to speed up your builds.
Code:
make -J2 bacon
__________________________________
If for some reason your brunching build or making bacon builds break, or gives you an error in your shell or terminal, you will have to start over with this command to try again.
Code:
make clean
____________________
Hope this helps. Credit and shoutouts goes out to the Linux Chixs worldwide. And to the nookie devs. *kiss*. There. Lol. Chant for nookie devs: Yep, yep , pipe it in we went superuser !! Keep brunching the encore guys, I think there is a debugger tool included when you repo synced and pulled files from the git. I think it gets worked back into the cyanogenmod mainline. Added: Phoenix Rising is allowed to learn too !!
Last edited: