yashsingh1/xdaforums huggingface dataset:
[Nook Color Android Development] fattire:
That's right. Big ups to Cicadaman for that first Froyo port, "Nookie Froyo", which was invaluable for helping get that first CM7 (gingerbread) build booting (like months and months before GB showed up officially in BN's bastardized android, I might add!) Dalingrin joined in soon after and we and a few others got it polished together.... God, this was what, late 2010 or early 2011. It's hard to believe Android didn't even have even basic tablet support for soft buttons... requiring Tablet Tweaks... Oh, how time flies... :silly: ...and the nook color is still kickin'...
[Nook Color Android Development] steven676:
Boy, way to make me feel like a whippersnapper ... :D

I still haven't had a chance to play with this on encore yet, but a bit of exploration on Galaxy Nexus (OMAP4, PVR SGX540) suggests that the graphics stack is going to be a headache. (I have no artifacts in most cases and working screenshots, but WebView is unhappy and the new rendering paths appear to be capable of tickling bugs in the SGX540 drivers.)
[Nook Color Android Development] deeper-blue:
And without all of you I wouldn't had been able to get this bastard Honeycomb SDK port running at all. Fun times :)
[Nook Color Android Development] fattire:
I was gonna say earlier... I'm pretty sure the Nook Color has run all the releases since 2.1 *including Honeycomb* thanks to deeper-blue!
[Nook Color Android Development] jimmcghee:
I'm amazed the encore dev team has been so active for so long. I can't believe its running 10.2/4.3. Which brings me to my problem.

I had a build environment that was working as of 10.1 but vbox broke when I upgraded to 13.10 and so I'm creating a new environment from scratch.

I followed the instructions at: http://wiki.cyanogenmod.org/index.php?title=Build_for_encore

but the 'breakfast encore' command is not adding the vendor/bn directory. It does create the device/bn directory and it adds two lines to roomservice.

Are the lines it put in roomservice wrong? Is there a better guide?

I'm able to build for my Galaxy S4 without any problems.
[Nook Color Android Development] fattire:
What are the two lines it added?
[Nook Color Android Development] jimmcghee:
Oops,

<project name="CyanogenMod/android_device_bn_encore" path="device/bn/encore" remote="github" />

<project name="CyanogenMod/android_kernel_bn_encore" path="kernel/bn/encore" remote="github" revision="encore-omap3-3" />

Should have posted them the first time. :o

Thanks

Gosh, that was fast!!!
[Nook Color Android Development] drmarble:
You need the proprietary files (props).

This error is sort of my fault. We had a broken build because of a broken link to the proprietary files. I fixed it so that it doesn't build if there are no props but it also causes difficulties when setting up a new build environment. I don't know of a good solution for this. I guess we could edit the build it yourself wiki page. Other devices just continue to make broken builds even if the props are missing.

You need the vendor/bn/encore proprietary files directory. You can generate it by running extract-files.sh from the device/bn/encore directory. This require you have an NC with cm on it plugged in via usb. Or, you can run unzip-files.sh and point it to a current cm zip file. Alternatively, you can find a repo with proprietary_vendor_bn/tree/cm-10.2 on github. I'm not sure if I should post the name of the secret (public) github repo that has all the cm props on it. Think Elmo and Oscar the Grouch.

Good luck.
[Nook Color Android Development] jimmcghee:
Looks like this worked. It's building now.

The Samsung version of extract-files.sh adds the ability to extract the files from an unziped Nightly so I thought I'd add that to the one for the CN. Thus, you can change from cm9 to cm10.2 without having to install a Nightly just to get the blobs.

http://paste.ubuntu.com/6384714/

If you like it, feel free to upload it to the repository. I take no credit for it since I just cut/pasted from the Samsung jfltetmo version. Or, I'll upload it, but you'll have to point me to instructions.
[Nook Color Android Development] fattire:
Obligatory...

Credit goes to sluo for getting the device folder all in order. I just built it and did some minor tweaks. Also keyodi was involved too :)

Right now:

* wifi works

* accelerometer works

* backlight works

* touchscreen works

* No sound so mediaplayer crashes

* No video

* Wallpaper doesnt' work

* Screwy SGX driver makes web scrolling turn black.

* screen record to mp4 doesn't work probably because of the media issues.

* The UI is fast and responsive.
[Nook Color Android Development] Benzoman:
We going to get a copy of this to test? Would love to test it.
[Nook Color Android Development] Arbelzapf:
I just want to say that I love all of you.
[Nook Color Android Development] steven676:
In keeping with a long-standing Nook Color tradition, no public binary builds of CM11 for encore, please, for now. If you want to try it out, you can build it yourself -- there are excellent instructions up on the wiki which you can use as a starting point: http://wiki.cyanogenmod.org/w/Build_for_encore. There are at least two good reasons for this request (which we've been making during the device bring-up period since at least CM9): (1) it encourages people to learn to build, which may have positive effects on the pool of potential developers; and (2) it prevents unsuspecting users from being exposed to potential nasty bugs (like the eMMC brick bug that was exposed by changes in Android 4.3, which appears to have caught at least one person before we landed a workaround for it).
[Nook Color Android Development] steven676:
Some things worth noting if you're building:

I pushed a big kernel update (3.0.8->3.0.101 from kernel.org, plus the AOSP kernel/common android-3.0 branch up to the point where it diverges from the Galaxy Nexus kernel) to the CyanogenMod and NookieDevs repositories. Note the new branch name -- you may need to update your local manifest to pull in branch encore-omap3-3.0.y for the kernel. (Building the encore-omap3-3 branch should work, but you won't get the benefit of whatever changes we make in the newer kernels.)

If you're feeling extremely adventurous and willing to put up with (or better yet, help fix!) significant breakage, there's a CM11 source tree for encore up at https://github.com/NookieDevs/android_device_bn_encore/tree/cm-11.0.
[Nook Color Android Development] shinyquagsire23:
Great to know that 4.4 is in fact much faster than previous builds, and I cannot thank you enough for all the work you guys do. Let's hope we see a stable build for the NC in the near future. :)
[Nook Color Android Development] aperezdc:
Some days ago I started trying to make a plain AOSP 4.4 build for the Nook... it's interesting to see that the changes we made almost the same — if not the same. Mine has some extra commits to suit my taste and workaround a couple of AOSP oddities, so I have rebased by device tree on top of yours. Yesterday I got an -eng build to boot in the Nook (yay!) and the only thing missing seems to be Bluetooth (it does not turn on). Today I am building a -userdebug variant and will continue from there adding some extras (like Superuser), but still keeping it lean because I have found that I tend to not use the CM extras in my mostly-for-reading Nook Color :D

Edit: the ART runtime works, but the difference is not very noticeable (the first time dex2oat runs for all the system packages system is slooooow and sluuuugish; then for installed apps it's okay). Probably this will improve in the -userdebug build that is cooking.

By the way, lots of kudos to all the people involved in keeping the Nook running recent Android releases.

(You, you are good!)
[Nook Color Android Development] Nburnes:
Been a while since I have pulled out my Nook Color and subsequently been to this part of the forum. So hello everyone!

Need some help here with the CM-11 updater-script. It built just fine (output wise at least) using the NookieDev source, CM's blob repo, and with the encore-omap3-3.0.y kernel branch. Now I am trying to flash using CWM v3.2.0.1 and it runs for a little while then outputs

set_metadata_recursive: some changes failed
E:Error in /sdcard/cm-11-20131120-UNOFFICIAL-encore.zip
(Status 7)
Installation aborted.

Pastie of updater-script: http://pastie.org/8496650

Any help would be much appreciated.
[Nook Color Android Development] steven676:
You need a newer recovery -- the one created when you built the rest of CM11 should work (out/target/product/encore/ramdisk-recovery.ub is your uRecRam (initramfs), the uRecImg (kernel) is the same file as uImage). (I don't think any of the existing publicly posted recoveries will work, unfortunately.)
[Nook Color Android Development] Nburnes:
Fantastic. That is actually what I thought, but was unsure of. :highfive:

Edit:
[Nook Color Android Development] bowguy:
Building CM11

For those of you building at home on a Virtual Machine, make sure you have enough hard drive space configured. I got by with a 40GB drive for CM10 but ran out of room on CM11. With a VM this can be a chore.

EDIT: Go for 60GB. I did two builds on my cloud server and the external volume with the minimum OS and build environment took 54GB.
[Nook Color Android Development] fattire:
Here are the files, for convenience...

For those of you wanting a build of the cm11 recovery, this is the one from the build a couple days ago when I posted the screenshot. I'm pretty sure it works cuz keyodi and I (me and Keyodi?) both used it to flash after I got that error..

kernel -> uRecImg

ramdisk-recovery.ub -> uRecRam

Remember, this goes in the /boot partition. If it doesn't work and things are terrible for you, my apologies in advance. The kernel source is the the new kernel and the recovery source is cm11.

Some enterprising young whippersnapper can no doubt rename the files and package it into a .zip, but I'm too lazybusy for such things.

(Note-- this is not an invitation to post CM-11 builds. It's just a convenience for non-builders who may want a more modern recovery.)
[Nook Color Android Development] aperezdc:
Exactly, you will need a newer recovery. Newer TWRP 2.6 versions should work as well, unfortunately I tried to build it but it won't initialize the screen (or show something on the screen), using adb devices the Nook is shown as being in recovery mode (meaning that kernel and userspace is working).

As another tip, if you have some other recovery you use regularly, you can use the names uAltImg and uAltRam and have a second recovery installed. I am using that to keep TWRP 2.3 as “normal” recovery, and a CM11-built recovery as “alternate”.
[Nook Color Android Development] fattire:
Webview fix in?

So this patch is said to do wonders on other devices to fix that black webview scrolling issue. It was just checked in, so I'm gonna do a build and see if it fixes the issue for encore too.

Update: Using the stock (not chrome) browser, it seems to be fixed!
[Nook Color Android Development] weldawadyathink:
What do we need in the local manifest file to do the cm11 build? I have started repo sync according to the directions on the cyanogenmod encore build wiki page, except with the 11.0 branch instead of 10.2 and am in the middle of repo sync.
[Nook Color Android Development] fattire:
The only things I think that wouldn't be in those build instructions are that you should use the NookieDevs version of android_device_bn_encore -- and the right kernel branch.

Anything else I'm forgetting?
[Nook Color Android Development] weldawadyathink:
Ok, but how to I actually put that into the local manifest file? I am new to this building from source idea and I don't really get how all the source code stuff works yet.
[Nook Color Android Development] fattire:
If you type breakfast encore you should get a file in ~/.repo/local_manifests/roomservice.xml which is the one to modify. See previous posts in this thread about how to change or add lines to switch the repositories to the ones you need.
[Nook Color Android Development] weldawadyathink:
Thanks for all the help so far. I got to breakfast encore in the wiki instructions, but it does not give me the xml file in local_manifests, so I made it myself with a manifest file I found my searching this thread, and made some modifications uith information from the manifest page in the cyanogenmod wiki. I just want to make sure I did this correctly, so here it is:

http://pastebin.com/ZxgYKgyx
[Nook Color Android Development] fattire:
I think you'll need a path in <remote name="NookieDevs" fetch="git://github.com/NookieDevs/android_device_bn_encore" /> to save it in device/bn/encore

That said, an update--

W/a big assist from sluo I got new prebuilt binaries for the sound stuff. The result? Youtube/angrybirds/pandora etc all work.

Changes are pushed so go to it.
[Nook Color Android Development] drmarble:
If you don't want to use a new recovery, you can include:

http://review.cyanogenmod.org/#/c/53559/

in your build and define: SKIP_SET_METADATA := true in BoardConfig.mk.

You will still need the newer recovery to install 11.0 gapps.
[Nook Color Android Development] weldawadyathink:
Can we use an old recovery to backup and restore to/from cm11, or do we need the new one for that too?

edit: I also got the manifest set up. Thanks for all the help. I am doing the actual build now, and once I am done, I can try to build for my phone. Thank you fattire for your no binary builds rule. It is the only reason I am now doing this, and it is exciting!
[Nook Color Android Development] fattire:
Good luck! :)
[Nook Color Android Development] weldawadyathink:
I just had a thought. All of the build guides say that you have to pull the blobs from a device running the version of cm you want to build. Of course this makes a circular dependency problem. I pulled them from a cm10.2 nightly. Will that cause a problem?
[Nook Color Android Development] steven676:
In this case, no -- the proprietary blobs we're using haven't really changed since CM10, and we're very unlikely to ever get updated ones.
[Nook Color Android Development] weldawadyathink:
Ok great. It was a fun night last night. I had the build going good. It was really windy and one of our sunroof flew off and put a hole an another. So we covered the hole with packing tape and duct tapped the 1st one onto the roof. Now I wake up to find that the power must have cut out and my computer turned off.

Anyways, the build seemed to be working, so again thanks for all the help. Hopefully I can get it finished tonight.
[Nook Color Android Development] hittingsmoke:
Apologies for the slightly off topic question. This is more about git I believe.

I'm on the sync phase of the build guide and I'm several hours in. My connection is mobile and I need to leave and take my phone with me. I'm guessing by nature of the word "sync" that this will be able to pick up where it left off if I disconnect the internet from the device that's syncing the repo?

Also, should I even be syncing with the CM10.2 repo if this guide is for building CM11 or did I miss a step somewhere?
[Nook Color Android Development] weldawadyathink:
The repo sync command cannot pause and resume, but if you disconnect and close the terminal window you can essentially do the same thing. It will resync the whole repo when you run it again, but it will only download stuff if you don't have it or it has been changed.

Long story short: close the terminal window and take your phone. When you get home again, reconnect your phone and execute repo sync in the source directory.

As for your other question, if you are trying to build cm11 you need to do the repo init command with "-b cm-11.0", assuming you are following the cyanogenmod wiki page instructions
[Nook Color Android Development] hittingsmoke:
Thanks, that's what I thought.

It appears I've been syncing in vein though. I tried "-b cm-11" and it returned an error. I didn't think to add a .0 so I just started syncing 10.2 without thinking about it. Doh.

Guess I'll start fresh when I get home!
[Nook Color Android Development] weldawadyathink:
Yep. The CM team I guess decided to do decimals after google's multiple jellybean updates. I wish you luck in your endeavors.

---------- Post added at 04:42 PM ---------- Previous post was at 03:57 PM ----------

I am now getting a build error. My first build was interrupted by power outage, so that may have caused a problem. I tried brunch encore and lunch [select encore] mka, but they cause the same fail notices.

In file included from external/chromium_org/content/common/android/hash_set.cc:5:0:

/home/spenser/android/cyanogenmod/out/target/product/encore/obj/GYP/shared_intermediates/content/jni/HashSet_jni.h:10:26: error: extra tokens at end of #ifndef directive [-Werror]

/home/spenser/android/cyanogenmod/out/target/product/encore/obj/GYP/shared_intermediates/content/jni/HashSet_jni.h:11:26: error: missing whitespace after the macro name [-Werror]

In file included from external/chromium_org/content/common/android/hash_set.cc:5:0:

/home/spenser/android/cyanogenmod/out/target/product/encore/obj/GYP/shared_intermediates/content/jni/HashSet_jni.h:24:20: error: expected initializer before '<' token

/home/spenser/android/cyanogenmod/out/target/product/encore/obj/GYP/shared_intermediates/content/jni/HashSet_jni.h:26:17: error: expected initializer before '<' token

/home/spenser/android/cyanogenmod/out/target/product/encore/obj/GYP/shared_intermediates/content/jni/HashSet_jni.h:29:22: error: expected '{' before '<' token

/home/spenser/android/cyanogenmod/out/target/product/encore/obj/GYP/shared_intermediates/content/jni/HashSet_jni.h:29:22: error: expected unqualified-id before '<' token

external/chromium_org/content/common/android/hash_set.cc:30:1: error: expected '}' at end of input

cc1plus: all warnings being treated as errors

make: *** [/home/spenser/android/cyanogenmod/out/target/product/encore/obj/STATIC_LIBRARIES/content_content_common_gyp_intermediates/content/common/android/hash_set.o] Error 1

make: *** Waiting for unfinished jobs....

Note: Some input files use or override a deprecated API.

Note: Recompile with -Xlint:deprecation for details.

I am building on Ubuntu 13.10, and I saw something about a library bug on this version, so maybe it's causing this?
[Nook Color Android Development] drmarble:
sun java 6

I think you have to use sun java 6 rather than the open java 6 that installs standard with ubuntu.

I googled installing sun java6 and found the solution (asklinux.com? something like that).

It builds and boots for me. It also continually has process media crashing. Luckily, my NC isn't

mission critical. May have to restore a 10.2 nandroid.

Good luck with you build.
[Nook Color Android Development] Nburnes:
I am able to build just fine with OpenJDK's java.

niall@niall-GA-MA785G-UD3H:~/android/cyanogenmod$ java -version
java version "1.6.0_27"
OpenJDK Runtime Environment (IcedTea6 1.12.6) (6b27-1.12.6-1ubuntu2)
OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)
[Nook Color Android Development] weldawadyathink:
I installed sun jdk, but now it complains that a bunch of files have "no default or required localization". I am really stumped now.
[Nook Color Android Development] fattire:
Did you set openjava as the default? I've heard tell that for debian and debian-derivative linux (Ubuntu, Mint, etc.) you can use this command:

sudo update-alternatives --config java

Some folks say that you even have to remove java 7 from your system, but I haven't had to do that.
[Nook Color Android Development] weldawadyathink:
What is the preferred java to build with? open or sun? and 6,7,or the new 8?

I am trying with the different javas i have installed currently.
[Nook Color Android Development] drmarble:
I only recommended sun java6 because I had read on #cyanogenmed-dev that it was needed to avoid errors in cm11. I installed it and haven't had any problems. I didn't try building cm11.0 with open java. I don't speak from any real experience. I also set the default java and javac as described a couple posts up by fattire. Maybe I am just spreading rumors about required java versions as others are reporting success with open jdk.
[Nook Color Android Development] weldawadyathink:
I decided to delete my source directory and redownload, and try with sun jdk 7. I found an autoinstaller ppa that updated the alternatives, so I am all set. I actually think that the openjdk that comes preinstalled is only the jre, which would explain my problems. I am currently compiling it, and I haven't had any errors yet. **fingers crossed**
[Nook Color Android Development] steven676:
The only officially supported JDK for building Android is Sun (Oracle) Java 6. (AOSP will actually bail out early if it detects you have something else; CyanogenMod emits a warning and continues.)

That said, most people have no trouble building with OpenJDK 6 these days. Google is moving ever so slowly towards getting the codebase building with Java 7, but it's known to be broken for now. (Given that Java 8 hasn't hit release status yet, I wouldn't bother trying to build with it unless you plan on fixing the problems yourself.)

And yes, you do need the entire Java Development Kit (JDK) to build Android -- the runtime (JRE) is not sufficient.
[Nook Color Android Development] weldawadyathink:
Good to know, thanks. Now I have 2 jre's and 2 jdk's installed on my system. I may delete them sometime but...procrastination.
[Nook Color Android Development] weldawadyathink:
Now I am getting this error:

"mkimage" command not found - U-Boot images will not be built

make[3]: *** [arch/arm/boot/uImage] Error 1

make[2]: *** [uImage] Error 2

make[1]: *** [sub-make] Error 2

make[1]: Leaving directory `/home/spenser/android/cyanogenmod/kernel/bn/encore'

make: *** [TARGET_KERNEL_BINARIES] Error 2

make: *** Waiting for unfinished jobs....
[Nook Color Android Development] steven676:
You probably need the U-Boot tools installed (package uboot-mkimage or u-boot-tools on Debian/Ubuntu systems). (I'm not sure whether those were ever built or provided as part of a CM build -- if not, we should document this dependency.)
[Nook Color Android Development] weldawadyathink:
It would be the u-boot-tools package on Ubuntu. Thanks. We should do a Google doc or something with an updated build guide.
[Nook Color Android Development] Arbelzapf:
I cannot find a way around this and google isn't helping. Does anyone know what to make of this? I am syncing with -f already

Edit: Never mind, I was just too stupid to google properly:

http://stackoverflow.com/questions/10076036/index-file-smaller-than-expected