yashsingh1/xdaforums huggingface dataset:
[Nook Color Android Development] unibroker:
The build immediately broke with

make: *** No rule to make target `vendor/bn/encore/proprietary/lib/dsp/720p_divx_mp4vdec_sn.dll64P'

I have a feeling that I should have removed the contents of the file "proprietary" before I moved them to the encore folder under the device/bn/encore. Is the inclusion of that folder name causing the breakage?

Update: fixed by removing "proprietary" folder and "make clean" command.
[Nook Color Android Development] unibroker:
At the start of build I get this

/bin/bash: xsltproc: command not found
/bin/bash: xsltproc: command not found

From googling this has something to do with the jdk not being in my PATH. Mine is. I got another blank screen after flashing the zip using eyeballer's git. So I flashed BarelyBuggy and copied those proprietary files and in the build process once again. If this doesn't work I may have to seek other employment.
[Nook Color Android Development] lekofraggle:
Hello,

Dj Gutz and I are trying to get OTG working and we are making some small progress, but I do not know how to build just the kernel. It would speed things up if I could find a tutorial on how to compile just the 3.x kernel and package it as a flashable update. Any idea where I could find one?

Thanks,

Leko

Sent from my NookColor using Xparent Cyan Tapatalk 2
[Nook Color Android Development] fattire:
I wrote this many years ago when I was first learning myself, but I think the info may still apply. You'll download the source differently since it's not from BN directly, use a different build tool (I still use code sourcery 2010q4 I think-- or you can use the one that's included w/CM source), a different defconfig, but if you have mkimage installed, you can end up with a uImage that should work fine.

Basically the steps are:

1. get the source (you probably did that already)

2. get a cross-compiler. You have that too if you've built before.

3. do this:

make ARCH=arm CROSS_COMPILE=~/path_to_the_cross_compiler/arm-2010q1/bin/arm-none-linux-gnueabi- encore_defconfig

Obviously change the link to the crosscompiler and the defconfig should be whatever you're building for. Your choices are in arch/arm/configs

4. Now do the same command again, but this time replace the defconfig with uImage and add -j# where # is the number of cores you have + 1:

make ARCH=arm CROSS_COMPILE=~/path_to_the_cross_compiler/arm-2010q1/bin/arm-none-linux-gnueabi- -j9 uImage

It will tell you where to find uImage at the end :)
[Nook Color Android Development] lekofraggle:
Thanks a lot Fat Tire. We may be asking for more help in the near future. The OTG code changed a lot in the upgrade to the new kernel, and it looks like we are quickly getting over our heads.

If anyone is interested, you can check out my git for progress. It builds,installs, and activatesOTG and then crashes the system if you have a device plugged in.

Where would I find my cross compiler on my build if I followed the old build instructions? I have been using brunch so it does not require me to manually type in the cross compiler path (at least not with my knowledge :).

I know you do not know how my build environment is set up, so it would help me if I could know what the cross compiler is called (which one I am using), and then I can find it.

I could just follow your instructions and install a new one, but I do not want to break my build environment.

I am running ubuntu 11.04.

Thanks again. This is so cool.

~Leko
[Nook Color Android Development] fattire:
You have a cross-compiler installed with the CM10 source code-- it's in prebuilt/ and prebuilts/ (different version). Additionally, you may want to try the version from Mentor Graphics (formerly Code Sourcery), which you can get for free here. The 2010q1 version seems to work well for a lot of people, and has become a bit of a standard compiler for OMAP projects. Not sure why but it seems to be best for building u-boot.
[Nook Color Android Development] xam247:
CyanogenMod has posted CM10 nightlies for the Nook Color.

1: How are these builds different from what the fantastic devs here have put together?

2: Has anyone tried these builds? If so, could you share some impressions?

Big thanks all around for the on-going support for the NC!
[Nook Color Android Development] unibroker:
zip file empty

I had a successful build and pushed it to my sdcard. I was then unable to properly umount. From the adb it was telling me the device was busy and this was after several hours. I had it recommended to me to just turn off the device. I did this and then booted into TWRP and the subsequent flash failed. I looked at the log and it said the zip was empty. I had read where not properly unmounting can lead to this error. Has anyone had this sdcard busy notice when trying to unmount? Thanks in advance for any suggestions.
[Nook Color Android Development] bigbob23:
The nightlies move forward from beta5 and (IMHO) already run circles around CM7. There is a dedicated thread at http://xdaforums.com/showthread.php?t=1941247.
[Nook Color Android Development] leapinlar:
They are a continuation of the builds the NookieDevs were releasing. They just moved everything to the official CM system. And yes, they work great. They improve constantly as CM adds features and NookieDevs tweak the Nook Color settings and features.
[Nook Color Android Development] lekofraggle:
So I grabbed the new cross compiler and ran these commabds...

All looked good until I got this error...

Any thoughts?

~Leko
[Nook Color Android Development] leapinlar:
You don't have mkimage installed. At a terminal, type:

sudo apt-get install u-boot-tools
[Nook Color Android Development] leapinlar:
I have been trying to set up and build and I am having no luck. So I guess it is my turn to ask the questions.

I have a separate Ubuntu partition set up on my 64 bit laptop. I had been running Ubuntu 11.10 32bit. I set up and successfully built both CM7 and CM9 with that. Then I tried CM10 and ran into lots of problems. First the repo sync did not seem to finish properly and then of course the build failed. I figured it was because I had a 32 bit setup.

So I completely wiped my 32 bit setup and installed Ubuntu 11.10 64 bit. I went through the wiki setup, installing the packages listed. Then I set up repo init for jellybean. When I repo sync it acts like it is doing the right thing, downloading the repository. Then it gets to a point where it says "Fetching projects : 100% (315/315), done". Then the terminal does a line feed and just sits there. I left it completely over night and no change. ~/android/system only has one hidden folder (.repo) that has 6.8GB in it.

I completely re-installed again, and repo did the same thing. Of course I have not tried to build yet.

What could be wrong? A missing package?
[Nook Color Android Development] drmarble:
leapinjar:

You've done the hard part of the repo sync, downloading the .repo directory (or file). It just got stuck expanding it. Try rerunning repo sync, sometimes it seems to get confused. Perhaps a better choice is running reposync (without a space). This is defined when you run . build/envsetup.sh. It runs a slightly souped up repo sync that seems to get stuck less often. Unless you are on a mac, then reposync is the same as repo sync, or at least it used to be.

You've finished the time consuming download part, the rest should be fast, just keep trying and don't delete that .repo file unless you like downloading 6.8 extra gigabytes.
[Nook Color Android Development] leapinlar:
Thank you. When I first started building, fattire told me how to set up the path properly, I think in .bashrc. That was so the . build/envsetup.sh ran properly. I forgot the command. Now . build/envsetup.sh does not work because bash cannot find it. And I know I need it later too. Can you help with that?
[Nook Color Android Development] drmarble:
change to you working (building) directory, usually android/system. build is right under that but you don't have it because repo hasn't finished syncing. I guess that suggestion won't work. The build directory is currently hiding in the .repo file. Maybe you need to rerun the curl command to set up repo, but if that was the problem you wouldn't have downloaded the .repo file. Here's the function:

function reposync() {
case `uname -s` in
Darwin)
repo sync -j 4 "$@"
;;
*)
schedtool -B -n 1 -e ionice -n 1 `which repo` sync -j 4 "$@"
;;
esac
}

You just need the line schedtool line if you aren't on a mac. Hope this helps. I haven't gotten completely stuck on a repo for a long time. I hope there is a better way than just nuking the .repo file. That takes me a day to download, hogging all our bandwidth, which doesn't make me very popular wth my wife.
[Nook Color Android Development] leapinlar:
I got the .bashrc updated with the path. I found a backup I had made of it. It was just adding the sdk to the path.

But that does not help my unpacking problem. I tried running drmarble's schedtool line in terminal, but it errors out on the which repo command. Partly I could not quite read the symbol before which and after repo, is that a single quote?
[Nook Color Android Development] mateorod:
Those are backticks in dr.marble's functions. backticks are used for expansion, as in a command that you want to run. So `which repo` is asking for the output of typing those exact words onto the command line.

I don't know what you are exactly facing here, especially if rerunning the repo sync never actually completes. Try another repo init before repo syncing again. In a last ditch effort, you could try and check out the files manually, and maybe it will give you some more information.

repo forall -c 'git checkout jellybean'

Or mr1-staging if you are looking to see 10.1's progress.

Edit: Another thing I have done when I have corrupted some objects in repo (usually by inadvertently running a nested repo sync) is to nuke everything but the projects folder. That keeps all the big pieces of the download while rerunning everything else. It is pretty quick...you will need a new repo init there as well. If neither of those fix it, you are having an environment issue I would bet.
[Nook Color Android Development] leapinlar:
Oh, thank you, both mateorod and drmarble! That schedtool line did the trick once I knew what those symbols were. Now I just have to put the proprietary files in. My ADB for the color is screwed up since playing with the HD+ so much. I copied the /vendor from my CM10 ROM. I know it goes under vendor, probably under a new folder, maybe /bn/encore, but can't remember. Seems there was more in device, like recovery.fstab, etc.
[Nook Color Android Development] mateorod:
There are more files than that, although recovery.fstab is in device. Here is the list of what goes where. This is from my repo, eyeballer's is set up a little differently. The files all end up in the same place regardless of repo, but my set up has the file structure of the proprietary folder mimic where it goes on the device. If you run setup-makefiles, the build breaks with eyeballers current set-up.

Best thing to do, really, is to

cd vendor
git clone http://www.github.com/mateor/proprietary_vendor_bn
mv proprietary_vendor_bn bn

You can obviously switch mateor for eyeballer if you wish, but don't run setup-makefiles. Which isn't needed anyway, I just use it to reset my makefiles when i was editing the source. If you are just compiling, you won't notice a difference between eyeballers and my repos.
[Nook Color Android Development] leapinlar:
Mateorod

Something is definitely wrong with my repo. I deleted it and repo inited again and did a reposync (one word) and it completed the whole download again ,but expanded it this time. But there is no encore specific things anywhere, like in device. I am supposed to CD to ~/android/system/device/bn/encore so I could run the. /extract-files.sh. But there is no folder by that name.

I was able to clone your prop files. Thank you.

I still don't have something set right.
[Nook Color Android Development] blazingwolf:
Did you change the lines in the manifest to download the encore files?
[Nook Color Android Development] drmarble:
leapinjar:

You need a local manifest to get the encore specific files. You and use mine (android/system/.repo/local_manifest.xml):

<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="CyanogenMod/android_device_bn_encore" path="device/bn/encore" remote="github" revision="jellybean" />
<project name="CyanogenMod/android_kernel_bn_encore" path="kernel/bn/encore" remote="github" revision="encore-omap3-3" />
</manifest>

or you can run source build/envsetup.sh, followed by lunch cm_encore-userdebug. Since we are official, lunch gets you he correct manifest. Lunch is classier, using your own local_manifest.xml is more versatile for applying other folks gits instead of the standard cm ones. The result is the same. After getting the correct manifest, you run repo sync again.
[Nook Color Android Development] leapinlar:
Are there instructions for that? That makes sense that somewhere we need to tell repo to do that, but I have seen nothing in the instructions.

Edit: drmarble, our posts crossed. I am doing lunch now. It is downloading a lot more. Thank you.

Shouldn't that be in the instructions? They got modified to say you don't need the local manifest anymore since we are official. It only talks about lunch when you are ready to build, not repo sync.
[Nook Color Android Development] unibroker:
USB mass storage protocol vs MTP (Media Transfer Protocol)

Wanted to post an update to my original post for others who might be having the same difficulty. It became my problem when I tried to do an adb push to a device running Jellybean. I was coming from a Gingerbread rom so completely missed Google's transition from transfer by USB mass storage protocol to MTP (Media Transfer Protocol). To keep this post of bearable length I'll leave that to this well-written explanation. It was originally written for a device running Ice Cream Sandwich but because I didn't flash any of those roms explains why I missed the transition http://goo.gl/YatbD
[Nook Color Android Development] mateorod:
An update on this...apparently there is something floating around being termed the 'repo deadlock' bug and I guess they are working on it. The official solution is to disable parallel threads with -j1. I mentioned to them that the schedtool line has worked for you, leapinlar.

Edit: I meant to add that a potential root cause is an out of date python, where 2.6 and below is not thread safe. But I think I remember when you were setting up your build machine, and 2.7 was the standard at that point (3+ not being backwards compatible).
[Nook Color Android Development] leapinlar:
I have python 2.6 from ages ago. I guess I should update. And next repo will try -j1.

I did get things so they could build. I was also missing some packages, so some tools were not there. I could tell by the error messages. Xmllint, and something like libslt. The ROM did not boot, but I was really just looking to build the recovery, 6.0.1.9, which did build and works great.

Thanks for the update.
[Nook Color Android Development] mateorod:
Python 2.6 ships with Ubuntu, I think. Upgrade to python2.7.3 and you can avoid those threading problems. But don't go to 3.0 or above, that is not backwards compatible and has yet to be adopted widely.
[Nook Color Android Development] lekofraggle:
Meteorrock,

Thanks a lot. I moved the discussion as eyeballer requested. I may have some time to try a build tonight or tomorrow.

This is looking sweet.

~Leko

Sent from my ADR6425LVW using Xparent Cyan Tapatalk 2
[Nook Color Android Development] meteorrock:
Glad to help :) Now that is forked into the main line, let the other guys help you on that, if anyone. I have been researching some on kernel development, its wicked hard. I use diff 3 to look for merge conflicts on the git, the git needs to be guided on how to see that code. I dont see many people working on the kernel. Do the developers here stay within niches? Like <eyeballer> stays within the framework build on the git and others stay in the kernel development on the git? I don't get that at all. Newer linux users want to learn all fields within android and linux.
[Nook Color Android Development] Tiezane:
I think out's more a matter of, different people have expertise in different areas so that's where they focus their efforts. I come from a purely Linux background, so looking into kennel elements wouldn't be as hard for me as, say, looking into the framework or the video drivers.

Sent from my Sega Master System via Carrier Pigeon.
[Nook Color Android Development] meteorrock:
I am looking into working on that USB host kernel. Do you guys have YUM or some sort of apt get installed? I worked with linux before but this android development is a tad different. Some websites say you do, others keep pointing to that Eclipse program.

Edit: Nevermind. I installed it along with that android SDK package.
[Nook Color Android Development] lekofraggle:
I use apt-get. I am on Ubuntu 11.04. I did use eclipse on OSX.

Sent from my ADR6425LVW using Xparent Cyan Tapatalk 2
[Nook Color Android Development] hwong96:
I looked at vold.fstab in CM10 and noticed the usbdisk mount path and folder name is incorrect. To test my suspicion, I ran Chain fire's USB Host Diagnostics to validate. The test did not detect a device. I edited vold.fstab using the correct path and folder name. Rebooted. I then ran USB Host Diagnostics. This time the result detected a device under rooted api. Since no device classes are in the kernel the USB drive wasn't recognized with a blue blinking light. I have attached screenshots of my changes and test results to whet your appetite. The last two screenshots are the default vold.fstab and test result.
[Nook Color Android Development] meteorrock:
<legofraggle> I will look into trying to compile that kernel for us today. Got a toolchain set up for droid use.

Edit: Getting errors here on compiling.

Edit: I am going to go through and see if I got all of my tarballs I need for this environment to build a kernel. That will take some time and research.
[Nook Color Android Development] lekofraggle:
I have been strung out prepping for progress reports so I have not had time to build.

I am done and may have some time this weekend. What errors are you running into?

Some of them could be the kernel.

~Leko

Sent from my NookColor using Xparent Cyan Tapatalk 2

---------- Post added at 08:20 PM ---------- Previous post was at 08:18 PM ----------

Interesting. Thank you for this. I think I am bypassing vold.fstab by evaluating my builds through the terminal, but I will try this.

~Leko

Sent from my NookColor using Xparent Cyan Tapatalk 2
[Nook Color Android Development] meteorrock:
Looks like I need those kernel header files. That config I made is not building. Do you have the header files for that driver? Also which driver is the USB Host driver?

Remember I am a noob :D

Forgot a tarball I needed to compile. I am up right now. hello.c is compiling for me.
[Nook Color Android Development] lollyjay:
Hahahahahaha! LMAO

QI0CM787SV, 12/11/2010

ES1.2, cyttsp

PA Encore 2.99 06DEC2012 nightly
[Nook Color Android Development] hwong96:
I think the USB Host driver is musb-hdrc. I don't have the other info you need. Maybe <leko does>
[Nook Color Android Development] lekofraggle:
Meteorrock,

Remember I too am a noob.

I will look for the header files when I get to my computer. If you download my git, I think the header files are there because I build the whole kernel (the config. is there and seems to work too).

I think the driver file is musb-hdrc as well.

~Leko

Sent from my ADR6425LVW using Xparent Cyan Tapatalk 2
[Nook Color Android Development] meteorrock:
Ok. I don't want to seem too pushy but where are the init files? I think we need to start from scratch. I am not getting the .config file to build anything on my end. The header file should be in that same folder you tried to start the .ko.

Let me do some more research on how to build a .ko from scratch.

If you can find the header file for that .ko just post it in the room for me ok? I got a online book open here on how to proceed. People are going to start to whine for their computer peripherals for the CM 10 at any time on their nookie. Plus the other developers might be able to help with that header file posted.
[Nook Color Android Development] lekofraggle:
Meteorrock,

What book did you find? I am interrested too. Remember that the otg syntax changed a bit for jellybean.

Here is a copy of my configuration file which though I have not built a standalone ko, bit when I build just the kernel, it builds fine (well, I do get a few errors).

Here is my configuration filehttps://github.com/lekofraggle/android_kernel_bn_encore/blob/usb_host/drivers/usb/musb/Kconfig. I still do not know which the headers are.

Edit: can you share your build errors? Terminal spits out code telling you what is broken, you just have to know how to read it. I have had so many bad builds that I am getting better at reading the output, but there are many here who can help with more expertise than the two of us combined.

Sent from my ADR6425LVW using Xparent Cyan Tapatalk 2
[Nook Color Android Development] hwong96:
The header files should look like this:

filename.h

Are you building a standalone module or incorporating it?
[Nook Color Android Development] meteorrock:
Some other sites say you can just have one header file outside of the module.

Remember guys I am only 14 yrs old so I am still new at this. Here is the link I am looking over. http://tuxthink.blogspot.com/2010/10/writing-example-driver-from-scratch.html

As for my errors, they are noob errors like directory problems and such. Did not want to bother you guys about that. Well, maybe I am getting over my head on this. I will research some more into building kernels and let you guys work in peace. Its just we had a problem with one programmer in here last year hiding his data within his modules and it caused quite a fuss.

Thanks legofraggle. I hope you guys get the module up soon.