It was almost exactly this time last year that I got my first Android device. I had absolutely no development experience whatsoever, so if anybody told me that I'd make a Cyanogenmod 7 Gingerbread ROM for the Kindle Fire in 11 months from that time, I would've thought they were crazy.
Android is the easiest to build on Linux, primarily Ubuntu. This guide is designed around building on Ubuntu as well. The first thing you need to build from source is to actually get the source. For Cyanogenmod 9 (Ice Cream Sandwich) you'll have to pull from the Cyanogenmod repository. You'll also have to download a few packages for Linux like Java, and they will have to be put in a PATH folder. In the guide here (which is meant to build CM7 for the Droid X) it's identical for the Kindle Fire. You can follow that guide up until you do this command "cd ~/android/system/" The next step of that guide would pull the CM7 repository, but we want CM9 (ICS). Instead of pulling Gingerbread, you'll want to pull ICS copy this:
repo init -u git://github.com/CyanogenMod/android.git -b ics
It may ask you for your name and email address. Once that's done, you can "repo sync -j16" and it will start downloading the source. This will take a very long time ~2 hours here, but once that's done, you can move on
Each device has its own device configuration and vendor files for building. Luckily for you, I've already setup the necessary stuff to get ICS to build for the Fire. You can download my source from my github here https://github.com/jackpotclavin You'll have to download the ICS-Kindle-Fire-Device and ICS-Kindle-Fire-Vendor files and place them in specific spots. For the vendor files, they go into /android/system/vendor/amazon/otter
You'll have to make the amazon and otter folders, but the vendor files should go in them so any random file, say, otter-vendor.mk will be placed so it's like this
/android/system/vendor/amazon/otter/otter-vendor.mk, with the proprietary folder inside /amazon/otter/.
It's almost the same with the device files. Once you download those, you place them into the /android/system/device/amazon/otter/ folder that you'll have to make, so any random file, say, system.prop goes would be located at /android/system/device/amazon/otter/system.prop
Once that's all done, you can download the prebuilts. For this you'll have to navigate into /android/system/vendor/cm and execute the get-prebuilts file. This will download a few files needed for building that will halt the build process if they're missing. Once those are done, it's building time. In the terminal, navigate to your /android/system/ folder, and type the command:
. build/envsetup.sh && brunch otter
That should be it! If somebody gets stuck, reply in this thread and I'll tell them where to go, and I'll update the post to help out happy building
Thanks for getting the code up! And the post I'm sure will be very useful for people to get started building.
JackpotClavin said:
It was almost exactly this time last year that I got my first Android device. I had absolutely no development experience whatsoever, so if anybody told me that I'd make a Cyanogenmod 7 Gingerbread ROM for the Kindle Fire in 11 months from that time, I would've thought they were crazy.
Android is the easiest to build on Linux, primarily Ubuntu. This guide is designed around building on Ubuntu as well. The first thing you need to build from source is to actually get the source. For Cyanogenmod 9 (Ice Cream Sandwich) you'll have to pull from the Cyanogenmod repository. You'll also have to download a few packages for Linux like Java, and they will have to be put in a PATH folder. In the guide here (which is meant to build CM7 for the Droid X) it's identical for the Kindle Fire. You can follow that guide up until you do this command "cd ~/android/system/" The next step of that guide would pull the CM7 repository, but we want CM9 (ICS). Instead of pulling Gingerbread, you'll want to pull ICS copy this:
repo init -u git://github.com/CyanogenMod/android.git -b ics
It may ask you for your name and email address. Once that's done, you can "repo sync -j16" and it will start downloading the source. This will take a very long time ~2 hours here, but once that's done, you can move on
Each device has its own device configuration and vendor files for building. Luckily for you, I've already setup the necessary stuff to get ICS to build for the Fire. You can download my source from my github here https://github.com/jackpotclavin You'll have to download the ICS-Kindle-Fire-Device and ICS-Kindle-Fire-Vendor files and place them in specific spots. For the vendor files, they go into /android/system/vendor/amazon/otter
You'll have to make the amazon and otter folders, but the vendor files should go in them so any random file, say, otter-vendor.mk will be placed so it's like this
/android/system/vendor/amazon/otter/otter-vendor.mk, with the proprietary folder inside /amazon/otter/.
It's almost the same with the device files. Once you download those, you place them into the /android/system/device/amazon/otter/ folder that you'll have to make, so any random file, say, system.prop goes would be located at /android/system/device/amazon/otter/system.prop
Once that's all done, you can download the prebuilts. For this you'll have to navigate into /android/system/vendor/cm and execute the get-prebuilts file. This will download a few files needed for building that will halt the build process if they're missing. Once those are done, it's building time. In the terminal, navigate to your /android/system/ folder, and type the command:
. build/envsetup.sh && brunch otter
That should be it! If somebody gets stuck, reply in this thread and I'll tell them where to go, and I'll update the post to help out happy building
Click to expand...
Click to collapse
(Place holder for later)
Thanks for this post, hoping to start my first aneroid programming contribution soon. This should help get me started. I am assuming though we still need to build drivers to get all the hardware working right? Unless. We can somehow rip drivers from the stock kindle and edit them. Any guide on that type of work, or examples to get started?
Kewl. Going to try this tonight.
Sent from my Kindle Fire using Tapatalk
could you do something like this https://gist.github.com/908477 or maby make a extract-files.sh that pulls the proprietary files from the device please? or would doing a git clone https://github.com/JackpotClavin/ICS-Kindle-Fire-Vendor.git set everything up to build?
Yeah sure I'll do that. Right now the the prop files in the vendor folder come from 6.2.1 so there won't be any new files or features you're missing out on
So yeah, cloning the vendor files will get you same files, but once amazon releases a new revision it will be needed so I'll get on that
Sent from my Galaxy Nexus using XDA App
excited to see this I have a lot of catching up to do, but I'll be of what help I can to this project...
I've tried to sync that repo twice now and it's failed both times. I have successfully synced the CM7 repo in another directory so I'm pretty sure my computer is set up correctly.
It goes for about and hour and then stops with an error. Said something like "unable to fetch objects" or something. So, I just did repo sync again and it errored out almost immediately.
I deleted the source directory and tried again but failed in the same spot. Any ideas?
teookie said:
I've tried to sync that repo twice now and it's failed both times. I have successfully synced the CM7 repo in another directory so I'm pretty sure my computer is set up correctly.
It goes for about and hour and then stops with an error. Said something like "unable to fetch objects" or something. So, I just did repo sync again and it errored out almost immediately.
I deleted the source directory and tried again but failed in the same spot. Any ideas?
Click to expand...
Click to collapse
Yes, I had the same error last night and again early this morning. Will try it later to see if it was a temporary server or network issue.
It's not an issue with your setup. Google has reported some syncing issues for some including myself (took me over 20 times yesterday to sync)
Sent from my Galaxy Nexus using XDA App
Just curious.. since we all use the same exact hardware why not just 1 person build it and post the rom? Or is there something special that needs to be done?
So I feel like a tard. I am trying to setup my copy of ubuntu so I can hopefully learn some devving skills. But when i try and install this stuff I get errors.
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
You are typing "sudo apt-get install" in front of that, right?
teookie said:
You are typing "sudo apt-get install" in front of that, right?
Click to expand...
Click to collapse
Yea, and it says it can't find some of the packages. I mean i don't think I am that bad at linux, but this is just annoying that there is stuff not working.
thrasherht said:
So I feel like a tard. I am trying to setup my copy of ubuntu so I can hopefully learn some devving skills. But when i try and install this stuff I get errors.
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
Click to expand...
Click to collapse
It's probably java causing the problem. Oracle changed the license and ubuntu can't distribute it anymore. There might be a ppa, but if not you will need to get it from oracle.
ttabbal said:
It's probably java causing the problem. Oracle changed the license and ubuntu can't distribute it anymore. There might be a ppa, but if not you will need to get it from oracle.
Click to expand...
Click to collapse
So how am I suppose to get java jdk installed? I am at a loss. I downloaded the tar, but I didn't understand what they wanted me to do from the instructions on the oracle website.
Code:
$ sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"
$ sudo apt-get update
$ sudo apt-get install sun-java6-jdk
I set mine up with this guide:
http://source.android.com/source/initializing.html
teookie said:
Code:
$ sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"
$ sudo apt-get update
$ sudo apt-get install sun-java6-jdk
I set mine up with this guide:
http://source.android.com/source/initializing.html
Click to expand...
Click to collapse
thanks man.
Icetech3 said:
Just curious.. since we all use the same exact hardware why not just 1 person build it and post the rom? Or is there something special that needs to be done?
Click to expand...
Click to collapse
This is Android Development, I'm assuming it's intended as a 'how to get started' guide for aspiring Android Devs.
Icetech3 said:
Just curious.. since we all use the same exact hardware why not just 1 person build it and post the rom? Or is there something special that needs to be done?
Click to expand...
Click to collapse
It doesn't "need" to be done but some of us like doing it ourselves IF possible. Honestly your statement comes off as "I'm lazy" but I'm sure you just don't have time. Besides the more people you teach the stronger the development will become. You want more ROMs don't you?
-----------------------------------
I found the information on the following page very useful if your running Ubuntu 11.10 like I am.
http://mjanja.co.ke/2011/11/building-android-4-0-on-ubuntu-11-10/
-----------------------------------
I'm hoping to modify the source so no matter what device I compile for they will all have the same look. That will be sweet.
Thanks OP I love posts like this and hope you can add more useful information in the future. I used to do these "how to"s on the HTC Touch Pro before I actually started modding entire ROMs.
Related
One may think that it was nearly imposible to theme or modify a Us cupcake rom from JesusFreke because of his method of saving space on the system partition. In fact we have extra room for bigger sized themes. Here I will explain to you how to easily open and close the Cramfs files to modify /system/framework folder.
Cramfs can be opened and closed only through a Linux based shell.
To do this in windows, you should download Virtualbox.
After you finish installing it go and download Ubuntu.
Open Virtualbox and click on new. Follow directions to create your new Virtualbox Ubuntu OS.
Make sure you enable usb sharing. So that you can transfer files back and forth to both OS's.
Once you got Ubuntu running, open the terminal.
Type:
Code:
sudo -s
enter your password
apt-get install cramfsprogs
This command loads the Cramfs program files to your (Virtualbox Ubuntu OS).
Once the package installs, your ready to go.
-Opening Cramfs files:
Open terminal on your Virtualbox Ubuntu OS.
Type:
Code:
cramfsck -x /home/username/Desktop/opened 'framework.cramfs'
Cramfsck -x /home/username/Desktop/opened= Where the un cramfs-ed folder will be placed and what the folder is called.
Replace username above, with your user name.
framework.cramfs= the cramfs file you want to open.(Drag and drop in terminal)
The system will create a folder called "opened" on your desktop. (Feel free the change the name of folder from /opened to your liking)
That folder contains the /system/framework files un Cramfs-ed.
-Closing Cramfs files
You MUST be logged on to ROOT before closing Cramfs!!!
You MUST use the ORIGINAL files from the framework and app's folders of CRB43-US to prevent problems!!!
Open terminal on your Virtualbox Ubuntu OS.
Type:
Code:
sudo -s
enter password
mkcramfs '/home/username/Desktop/opened' framework.cramfs
mkcramfs '/home/username/Desktop/opened'= Location of the cramfs file.(Drag and drop in terminal)
Replace username above, with your user name.
framework.cramfs=The name of the cramfs file.
The system will create a cramfs file, located in the /home folder.(Click Places)
I have uploaded a CRB43-US Theme template to make it easier for you.
CRB43_US_Theme_Template.zip
Edit the template's framework and apps files to prevent forcloser!
I hope that you find this information useful in any way.
Here's some helpfull links:
How to manuals for creating themes
How to edit XML's
How to edit .9.png
Great technique. I've not tried it yet however I tried it with Cygwin. Unfortunately I don't think I was able to get it to work with it. Any thoughts?
From the other thread:
You need linux to do this! I mean come on, Android is not a Microsoft product, it's Linux based....Time to get your hands dirty.
Click to expand...
Click to collapse
I'm going to try it on SUSE Linux soon.
blackknightavalon said:
I'm going to try it on SUSE Linux soon.
Click to expand...
Click to collapse
Well ****. I did the sudo -s and password instructions and when I typed in the "apt-get install cramfsprogs" one I got "bash: apt-get: command not found" error message. HALP!!!1!
/SUSE Linux 10
blackknightavalon said:
Well ****. I did the sudo -s and password instructions and when I typed in the "apt-get install cramfsprogs" one I got "bash: apt-get: command not found" error message. HALP!!!1!
/SUSE Linux 10
Click to expand...
Click to collapse
apt-get is for Ubuntu and (i think) other Debian based Linux system. You'll need to use Redhat Package Manager (rpm) or some similar package manager.
http://en.opensuse.org/Libzypp/Package_Management
-Andy in Indy
Binary100100 said:
Great technique. I've not tried it yet however I tried it with Cygwin. Unfortunately I don't think I was able to get it to work with it. Any thoughts?
Click to expand...
Click to collapse
I tried it through Cygwin and I gave up because of the long process. I had to download a mirror site to download the cramfs program. Then I had to relocate most of the folders I wanted to modify because of that shell. Then I got more errors, so I said ...... that!!! And did it the way I posted it. I'll try to get it running on Cygwin and I'll let you know if I'm successful. FYI- you have alot more options on Ubuntu to Open ,see, and modify files on the Android packages, then you would on Cygwin.
So this maybe a newb question for some of you but I installed VirtualBox and Ubuntu 9.04 and followed the instructions. But I've hit a bump.
When I opened Terminal and entered sudo -s it will not let me enter my password. It just stays as a black box that doesn't move. I can type everywhere else... just not there for some reason. What am I missing?
Binary100100 said:
So this maybe a newb question for some of you but I installed VirtualBox and Ubuntu 9.04 and followed the instructions. But I've hit a bump.
When I opened Terminal and entered sudo -s it will not let me enter my password. It just stays as a black box that doesn't move. I can type everywhere else... just not there for some reason. What am I missing?
Click to expand...
Click to collapse
It doesn't show **** or anything, but its entering. Type password and press enter!
RichieDaze said:
It doesn't show **** or anything, but its entering. Type password and press enter!
Click to expand...
Click to collapse
Heh. I was hoping it was that easy. Thanks. I'm playing with it now.
Andy_in_Indy said:
apt-get is for Ubuntu and (i think) other Debian based Linux system. You'll need to use Redhat Package Manager (rpm) or some similar package manager.
http://en.opensuse.org/Libzypp/Package_Management
-Andy in Indy
Click to expand...
Click to collapse
Okay, I checked with my laptop's bin folder and I have rpm installed already. Today's n00b question is "now what?"
Wubi
Why don't you guys just use the wubi installer for ubuntu?
Its pretty mind numbingly easy to set up... and i haven't had any issues with it for the last month I've been using it.
http://wubi-installer.org/
then you can just use apt
jonnybueno said:
Why don't you guys just use the wubi installer for ubuntu?
Its pretty mind numbingly easy to set up... and i haven't had any issues with it for the last month I've been using it.
http://wubi-installer.org/
then you can just use apt
Click to expand...
Click to collapse
The only thing I didn't like about that installation was that I had to reboot to use either OS. With Virtual Box I can run my Os + 1,2, or 3 other OS's at the same time. That how I had it installed before I started using the Live cd to do the work. Thanks for giving us an other option. I guess its up to the users preference. I do recommend its use if you don't mind to reboot.
n00b question time: Would I be able to use the mkfs.cramfs program using SUSE? If so, what are the terminal codes?
/seriously stuck on this
its not working wat am i doing wrong
[email protected]:~$ sudo -s
[email protected]:~# ******
bash: ******: command not found
[email protected]:~# apt-get install cramfsprogs
Reading package lists... Done
Building dependency tree
Reading state information... Done
cramfsprogs is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
[email protected]:~# cramfsck -x /home/ubuntu/Desktop/opened 'framework.cramfs'
cramfsck: stat failed: framework.cramfs: No such file or directory
[email protected]:~#
Click to expand...
Click to collapse
the ****** is the password.
i have the framework.cramfs
i also have the CRB43_US_Theme_Template.zip file on the ubuntu dektop
i tried this also
[email protected]:~# cramfsck -x C:\Documents and Settings\******\Desktop 'framework.cramfs'
usage: cramfsck [-hv] [-x dir] file
-h print this help
-x dir extract into dir
-v be more verbose
file file to test
[email protected]:~#
Click to expand...
Click to collapse
can someone help
bboy_201 said:
its not working wat am i doing wrong
can someone help
Click to expand...
Click to collapse
Did you pull the cramfs file from the zip onto your desktop before you dragged it onto the terminal?
yes i did..
its on my destop for my windows n my ubuntu desktop
Finally, progress!
Just to update you guys on one thing: After roughly 3 weeks of blindly thrashing about SUSE Linux Enterprise Desktop 10 and its buggy BIOS screen like a n00b, I FINALLY got installed Debian on my laptop! Next step: Figure out how to make a cramfs image and test-port my personal modded Moon Dust theme (with the Firefox logo on the browser and Carbon Black trashcan) before I actually start porting other devs (and them submitting the ports to the original devs for their approval).
Am I the only one actually working on this?
Progress Part The Second
blackknightavalon said:
Just to update you guys on one thing: After roughly 3 weeks of blindly thrashing about SUSE Linux Enterprise Desktop 10 and its buggy BIOS screen like a n00b, I FINALLY got installed Debian on my laptop! Next step: Figure out how to make a cramfs image and test-port my personal modded Moon Dust theme (with the Firefox logo on the browser and Carbon Black trashcan) before I actually start porting other devs (and them submitting the ports to the original devs for their approval).
Am I the only one actually working on this?
Click to expand...
Click to collapse
I had a few bugs to work out, but now Debian is working as good as I can hope to get it working on my laptop. Now I need to compare the differences between the CRB43 framework-res images and RC33's. After that, it'll simply be a matter of a one-for-one swap with the instructions courtesy of OP.
The main thing is that I got the "apt-get install cramfsprogs" part working!
Ok, I've had alot of questions about how to compile CM10 from source and see alot of people doing it all different ways.
This tutorial will allow you to sync, compile, and build CM10 from source for the Captivate Glide i927.
This method is easy and User friendly and tested on Ubuntu 10.04, 12.04, and Linux Mint 13. Now I use a 100% Linux system(no windows), but unless you want to reformat your PC to ext4 and reformat it to run Linux, I advise using VirtualBox.
You can download VirtualBox here: https://www.virtualbox.org/wiki/Downloads
You can download Ubuntu here: http://www.ubuntu.com/download/desktop
(Download 12.04 not 12.10)
Getting started
After you setup your virtual machine open up a terminal and run as root.
To do this type in terminal:
Code:
sudo bash
Now it will ask you for your password(the one you used to set up ubuntu) You wont see it doing anything as you type it, but its taking it. Then after you enter your password hit enter. Now your a root user.
Now we need to open our home folder as root also. Why? Because in linux you cannot make changes, move files, delete or edit files in your home folder unless you are root. Trust me, I've been a linux user for years.
To Open your home folder as root type in terminal:
Code:
nautilus
Ok, now open a second terminal to do our real work in...
Install Java
Ok, this will permanently install java into your machine. After you open a second terminal, run it as root also as stated above.
Then type:
Code:
wget https://github.com/flexiondotorg/oab-java6/raw/0.2.6/oab-java.sh -O oab-java.sh
Hit enter and watch the magic.
Next:
Code:
chmod +x oab-java.sh
sudo ./oab-java.sh
sudo apt-get install sun-java6-jdk
This may take a while. When finished we are now ready to install our required packages to build android.
Type in terminal:
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 pngcrush schedtool xsltproc zlib1g-dev:i386
This will work for 10.04 alone, no other packages needed.
But, If your running 12.04(which you should) add this after the above packages install
Code:
sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
This will also take a while, so just be patient!
Installing The repository
Now we need to install the repo command script that will initialize the repo.
Type in terminal:
Code:
mkdir -p ~/bin
mkdir CM10
curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
chmod a+x ~/bin/repo
Add repo to your path
Code:
vi ~/.bashrc
This will open the bashrc file. Scroll all the way to the bottom and enter this:
Code:
export PATH=$PATH:~/bin
Initialize the repo and sync repo
Code:
cd CM10
repo init -u git://github.com/CyanogenMod/android.git -b jellybean
repo sync
This will take a long time depending on your internet speed.
When finifshed we now need to clone the device trees.
go into your CM10 directory and cd into device. then in terminal type:
Code:
git clone git://github.com/The-Covenant/android_device_samsung_i927.git samsung/i927
Ok, you see this at the end of our clone command? (samsung/i927)
This will automatically make the proper folders exactly where they need to go. No need for moving or renaming.
Next clone the kernel source. Cd back into your CM10 directory and type in terminal:
Code:
git clone git://github.com/The-Covenant/android_kernel_samsung_i927.git kernel/samsung/i927
This clone may take a while, the kernel source is pretty large.
Now we need to clone the proprietary files for the device.Type in terminal:
Code:
git clone git://github.com/The-Covenant/proprietary_vendor_samsung.git vendor/samsung
Now lets Build!
Cd back into your CM10 source, if your not already, and type:
Code:
vendor/cm/get-prebuilts
this will download the prebuilt Term.apk and library
then the build command:
Code:
. build/envsetup.sh && brunch i927
This should build from start to finish and make a flashable zip in out/target/product/i927
This tutorial is for CM10, not CM10.1.
CM10.1 is a different beast and I havent pushed the CM10.1 device tree up yet, but as soon as I do, I will update this tutorial for building 4.2.1.
Enjoy!
Andoid SDK
The android SDK is not necessary to build android, but having adb is.
You can download it here and follow intstall instructions.
Code:
[URL]http://developer.android.com/sdk/index.html[/URL]
To use ccache to build
Using ccache will drastically cut down your build times by building up the ccache, info and using it to build. Now, your first build after setting up ccache will be normal time, 3 to 6 hours depending on your processor, all builds after should be over half that, mine takes bout 45 min to an hour.
Now, after you sync everything in, cd back into your home directory and type in terminal:
Code:
sudo apt-get install ccache
Then and the top of your home directory click view, then show hidden files. Now in your home directory scroll down and find the .bashrc file and open it up with gedit. At the very bottom enter this code to use ccache:
Code:
export USE_CCACHE=1
Now to set our ccache limit in our cm10 source.
Cd into your cm10 directory and type this in terminal:
Code:
prebuilts/misc/linux-x86/ccache/ccache -M 20G
That's it, your set up to use ccache! Enjoy!
downloading Ubuntu 12.04 64 bit edition now (30 more minutes to go). I'll try this out today. Thanks for the detailed guide.
..L.I.K.E...A...B.O.S.S..
Good Job D! This should answer everyone's questions!
Sent from my SAMSUNG-SGH-I317 using Tapatalk 2
Thanks! Nice to know that I'm on the right path!
By the by, there's an even easier way to install Java (Ubuntu only):
Code:
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get install oracle-java6-installer
The scripts in the PPA do all the work for you, you just say "yes" to adding the PPA and "yes" to the EULA and it does everything else automatically.
-E- So wait, we DON'T have to run extract-files.sh? Where do the proprietaries come from then? I sure know this phone has a lot of them; between secril and the SoC practically everything has a blob in the pipeline!
roothorick said:
Thanks! Nice to know that I'm on the right path!
By the by, there's an even easier way to install Java (Ubuntu only):
Code:
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get install oracle-java6-installer
The scripts in the PPA do all the work for you, you just say "yes" to adding the PPA and "yes" to the EULA and it does everything else automatically.
-E- So wait, we DON'T have to run extract-files.sh? Where do the proprietaries come from then? I sure know this phone has a lot of them; between secril and the SoC practically everything has a blob in the pipeline!
Click to expand...
Click to collapse
But it only installs java.. this one builds it into the os. Then installs it... Easy is not necessarily better. My java commands here litteraly build java from source, that way its part of everything the os does, its no longer a system tool application.
Sent from my SGH-I927 using xda premium
roothorick said:
Thanks! Nice to know that I'm on the right path!
By the by, there's an even easier way to install Java (Ubuntu only):
Code:
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get install oracle-java6-installer
The scripts in the PPA do all the work for you, you just say "yes" to adding the PPA and "yes" to the EULA and it does everything else automatically.
-E- So wait, we DON'T have to run extract-files.sh? Where do the proprietaries come from then? I sure know this phone has a lot of them; between secril and the SoC practically everything has a blob in the pipeline!
Click to expand...
Click to collapse
Read??? What part of clone the proprietary files are you not understanding??? This is a foolproof tutorial... No, you don't have to do extract-files.sh, I've already done that for you. Just have to clone it in.
Sent from my SGH-I927 using xda premium
Everyone.. just follow this tutorial to the t and you'll have your own cm 10 build. I have been doing this a long time on Linux, and this way I use every time I set up a new system and its been flawless.. Im not saying that if you know another way to install java not to do it, im just saying ive tried them all and this way is the most stable and solid...enjoy.
Sent from my SGH-I927 using xda premium
Thanks, Dman! I have been wanting to do this for so long!
Sent form my SGH-i927 running dman's cm10.1
scottbot95 said:
Thanks, Dman! I have been wanting to do this for so long!
Sent form my SGH-i927 running dman's cm10.1
Click to expand...
Click to collapse
Nice.. if y'all get any errors on any of the commands let me know and ill walk you thru fixing them. Although, you shouldn't. But you never know..
Sent from my SGH-I927 using xda premium
After getting everything setup and synced from the tutorial, refer to second post for setting up ccache
Sent from my SGH-I927 using xda premium
Will you still be posting updates on your cm10 rom? Or will we have to compile the rom from the tool?
Sent from my SGH-I927 using xda app-developers app
Laugher19 said:
Will you still be posting updates on your cm10 rom? Or will we have to compile the rom from the tool?
Sent from my SGH-I927 using xda app-developers app
Click to expand...
Click to collapse
I will be updating. This is for those who want to help with development. As I dev for 5 devices and my time is limited..
Sent from my SGH-I927 using xda premium
So running "nautilus" will give you an error like the one in attached printscreen. So from what i found out that you either install samba or just let it be as it doesn't matter. But i installed samba as in may come handy for sharing and transferring file . Moving on now..
Had to Run
Code:
apt-get -f install
cause of the error encountered in the given screenshot and it resolved the issue.
ninthsense said:
So running "nautilus" will give you an error like the one in attached printscreen. So from what i found out that you either install samba or just let it be as it doesn't matter. But i installed samba as in may come handy for sharing and transferring file . Moving on now..
Click to expand...
Click to collapse
You have to install nautilus. Will give no errors
Sent from my SGH-I927 using xda premium
ninthsense said:
Had to Run
Code:
apt-get -f install
cause of the error encountered in the given screenshot and it resolved the issue.
Click to expand...
Click to collapse
Then your not running as root if you use apt-get install.. this is not recommended..
Sent from my SGH-I927 using xda premium
Try running gksu nautilus
Sent from my SGH-T889 using Tapatalk 2
dman3285 said:
Then your not running as root if you use apt-get install.. this is not recommended..
Sent from my SGH-I927 using xda premium
Click to expand...
Click to collapse
I'm running root , as visible in the screenshot. Anyway synching repo now and have to wait.
Nautilus or gksu nautilus will gain root access to your home folder
Sent from my SGH-I927 using xda premium
hello xda-developers
I am having problems building from source, I've been trying to get his to work for over a week or so with the help from the lovely people here:
https://github.com/EpicCM/d710tools/issues/10
I think this forum is probably a better place, I will organize my thoughts better on this forum for all to read!
i've tried to install this on different systems, a 12.04 ubuntu, 12.04 and a clean 10.04 vm. in my next post i show all logs for the 10.04 attempt. the build results are also for 10.04
WHAT'S WRONG:
The problem is (depending on the guide i follow) cm9 either does not build (complains about libump.so not existing, despite having the proprietary repo in my localmanifest), or when i install the .zip, my phone goes into an eternal black screen after the "samsung galaxy s2" screen
There are two different basic setups i've been doing (i've tried these two setups in ubuntu 12.04,12.10,10.04LTS)
And i cannot figure out why the [email protected]#$ing [email protected]#$ why!!!!!!!! /rant
(log)Build instructions 1:
this is the build instructions that lead to a build error, these instructions were taken from here:
https://github.com/EpicCM/d710tools/wiki
commands: http://pastebin.com/WbXgKmZp
results:http://pastebin.com/Lq5iLt8L
Note: between each build i do make clobber and make installclean.
(log)Build instructions 2 (after i do make clobber and make install clean, repo sync, and the vendor and d710 tools again):
taken from the readme here
https://github.com/EpicCM/d710tools
commands: . build/envsetup.sh && brunch cm_d710-userdebug
built results:http://pastebin.com/8FWtqkRf
and if you feel the need to download the file, here is a direct download link
buildresults.txt : pastebin.com/download.php?i=8FWtqkRf
NOTE: you'll notice i had to sudo apt-get install schedtool. Also, i've done this from scratch before so i know if i dont at the end up the build it tells me to get pngcrush, so i do that too
WHAT I KNOW:
I've done my homework on the error for the build instructions 1:
-I know libUmp.so is a proprietary file, and the file does no exist in that directory, however it exists in another directory.
-Looking at the proprietary, that is where it should be, is there a script to move these directories? it's not a simple one line cp.
WHAT I DONT KNOW:
-builds but black screens? wtf?
-even if i managed to make something to do the cp to the appropriate directories, I dont even know if i'll end up with the same problem
-perhaps there is more not stated in the tutorial? if so I cannot find it
help? i've lost some hair over this, i hope you all can help buy me time to grow it back
i'll try anything.... i'll start over from an 11.10 if somebody even hints it might work...
what i want from this post
--well of course i would love a solution
--but really what i need is help to debug this, i have no idea where to start, i've done all i believe google and my brain can handle
reserved
more debug information, non build logs. These are the instructions as i followed
LOGS:
With the goal of being very thoughrough, i will start from a clean ubuntu 10.04 VM (network is using bridged), and I will post the result of each command to setup the environment for building.
If i saw an error with these i would google, but i dont see a problem, so i'm here.
Here we go (using this guide to setup env for 10.04 https://github.com/EpicCM/d710tools/wiki)
NOTE: for this step i had to change 0.2.4 to 0.2.6 because 0.2.4 was not building, 0.2.6 appears to work with no problem.
Setup local java repo and java commands: http://pastebin.com/RGhD1Shb
Results: http://pastebin.com/iEnNzSh3
(log)Installing required packages (Ubuntu 10.04)
commands: http://pastebin.com/eCZXkNvV
results: http://pastebin.com/vwzxfVsq
(log)Iidk what this is but guide said to do it for ubuntu 10.04:
command: sudo ln -s /usr/lib32/mesa/libGL.so.1 /usr/lib32/mesa/libGL.so
result: [sudo] password for tryagain: [email protected]:~$
(log)IMKDIRS, DOWNLOAD REPO, INIT REPO:
commands:http://pastebin.com/58aunVxB
results:http://pastebin.com/kKq9vyf5
(log)IThen i LOCAL MANFIFEST saved as local_manifest.xml inside ~/android/system/.repo/local_manifest.xml, here's what my localmanifest looks like:
http://pastebin.com/SCPAV8Ne
(log)IREPO SYNC THE FILES:
you may notice in the script file i had to repo sync -j1 more than once, because sometimes it would fail... in the end had no errors
commands : repo sync -j1
results: http://pastebin.com/a5Pa3sbL
results2: http://pastebin.com/VGPcPrE6
(the reason why there are two results is that i apparently forgot to save the local_manifest.xml the first time, results2 shows with the syncing of the files i have in my local manifest)
(log)IPREBUILTS, APPLY.SH:
commands: http://pastebin.com/VVx84ujN
results: http://pastebin.com/w9Wij28c
NOTE: i had to gedit the vendor to get the term.apk since
https://github.com/downloads/jackpal/Android-Terminal-Emulator/Term.apk isnt working
i replaced https://github.com/downloads/jackpal/Android-Terminal-Emulator/Term.apk with http://dl.dropbox.com/u/11103217/Term.apk to get things going.
reserved
reserved just in case, i got a lot of text
I've tried different jdks different tutorials and refine this from scratch on 3 different Linux versions
Sent from my SPH-D710 using xda app-developers app
updated!!!!
bump
1/24hour bump
1/24 bump
Nigel here, try running running: adb lolcat ; while you're on the blackscreen so we can get some insight into what's wrong with the rom.
so adb logcat doesnt work, it doesnt recognize my device as connected to my computer on the black screen.
The computer says it's an unknown device, or the device errored.
but that didnt stop me from trying anyway, i went into recovery to try and find what i wanted. As adb works in recovery for some reason.
when i execute it in recovery i get this
C:\Users\dfreelan\Downloads>adb logcat
/sbin/sh: exec: line 1: logcat: not found
so I went into adb shell while in recovery and executed /system/bin/logcat and got this
http://pastebin.com/8hnAa3iK
I went into /dev/log and executed "cat main" and tried to cat all the other things there, but i didnt get more information than what you see there.
Here is the recovery.log from installing the .zip, in case that is good for some debugging:
http://pastebin.com/gVC1TYyy
dfreelan said:
so adb logcat doesnt work, it doesnt recognize my device as connected to my computer on the black screen.
The computer says it's an unknown device, or the device errored.
but that didnt stop me from trying anyway, i went into recovery to try and find what i wanted. As adb works in recovery for some reason.
when i execute it in recovery i get this
C:\Users\dfreelan\Downloads>adb logcat
/sbin/sh: exec: line 1: logcat: not found
so I went into adb shell while in recovery and executed /system/bin/logcat and got this
http://pastebin.com/8hnAa3iK
I went into /dev/log and executed "cat main" and tried to cat all the other things there, but i didnt get more information than what you see there.
Here is the recovery.log from installing the .zip, in case that is good for some debugging:
http://pastebin.com/gVC1TYyy
Click to expand...
Click to collapse
adb logcat doesnt work in recovery.
While in recovery, adb shell and pull a last_kmsg, also try editing your local_manifest to build with the ics device tree not the smdk tree and see if that helps.
ie: "<project name="EpicCM/android_device_samsung_d710" path="device/samsung/d710" remote="github" revision="smdk" />" change that to "ics", i think smdk had some issues with cm9.
also if you want, hit up #jb-dev-e4gt on freenode, you may get some help there, our main dev chris41g is MIA so the progress on this device is at a stand-still. Though i do see sbrissen and PhantomPhreak53 are working on cm10.1
hrubak said:
adb logcat doesnt work in recovery.
While in recovery, adb shell and pull a last_kmsg, also try editing your local_manifest to build with the ics device tree not the smdk tree and see if that helps.
ie: "<project name="EpicCM/android_device_samsung_d710" path="device/samsung/d710" remote="github" revision="smdk" />" change that to "ics", i think smdk had some issues with cm9.
also if you want, hit up #jb-dev-e4gt on freenode, you may get some help there, our main dev chris41g is MIA so the progress on this device is at a stand-still. Though i do see sbrissen and PhantomPhreak53 are working on cm10.1
Click to expand...
Click to collapse
well apparently it never writes to /proc/last_kmsg
I figured for kicks and giggles i'd show you kmsg i got freshly booting into recovery, but my guess is that it's no good.
http://pastebin.com/jJC6ZJsZ
here's the brunch std err, they error out as there is no target for d710 (maybe i should use the old kernel? new one is smdk)
http://pastebin.com/jP0mTkZS
brunch stdout
http://pastebin.com/X571EkmR
here's what happens when i use make -j4, you'll notice it still errors out on libUMP.so
http://pastebin.com/eXEcTRPK
here's the new local_manifest.xml, you know to make sure i didnt [email protected]#$ up
http://pastebin.com/zXLCWDAP
when i use the _old kernel (android_kernel_samsung_epic4gtouch_old) i get this build error:
http://pastebin.com/09hDh8Nh
when i use the control kernel (android_kernel_samsung_epic4gtouch) It compiles!!!!!
however, still does the same infinite black screen (and i was so optimistic too)
here's my new local_manifest.xml
http://pastebin.com/FgARtF77
and of course, there is still no last_kmsg :-/
You might take a look at this:
http://aosp.chris41g.org/chris41g_o...How-To-Compile-CyanogenMod-9-from-Source.aspx
I followed this guide, generally, with changes to compile CM10 and got it to work. I did it on ubuntu 12.04. I did have to make some changes for 12.04. I didn't/don't know what I am doing, but got it to compile and flash and work.
todivefor said:
You might take a look at this:
http://aosp.chris41g.org/chris41g_o...How-To-Compile-CyanogenMod-9-from-Source.aspx
I followed this guide, generally, with changes to compile CM10 and got it to work. I did it on ubuntu 12.04. I did have to make some changes for 12.04. I didn't/don't know what I am doing, but got it to compile and flash and work.
Click to expand...
Click to collapse
i was actually doing exactly that to try and get cm9 to work my very first time. i talked to hrubak on the irc channel. He looked at the ICS kernel and noticed chris41g changed some stuff and ssuspected that that's why CM9 wasnt working for me.
He suggested i just do CM10.
i'll post with my success or failure
Thanks for the reply!
I've been wanting to try an compile Android for myself to see how it's done, even though Slimroms officially supports my device..
Only problem for now though, is I've successfully compiled the ROM and everything but after I flash it, it won't boot.
I get stuck at the Slimkat splash screen. The boot animation doesn't start. Adb can recognize the device being connected. I haven't tried any adb commands other than adb devices. The LED doesn't come on like it's supposed to while booting. While the phone is connected to a computer, you can't look at the files on it while it's in this state.
(my device actually is a d2can but, it's pretty much the same as a d2att)
The ROM is supposed to work for all of the lte variants of the siii
Here are the commands I have used to compile it after installing java, bison and some other stuff... Ubuntu 14 LTS
mkdir ~/slimkat/
mkdir ~/slimkat/androidsys/
mkdir ~/slimkat/bin/
cd ~/slimkat/androidsys/
repo init -u git://github.com/SlimRoms/platform_manifest.git -b kk4.4-caf
repo sync
. build/envsetup.sh
lunch slim_d2lte-userdebug (I also tried brunch d2lte userdebug)
make -j2 bacon
Update: I fixed it. Just needed to add some files from theloonybin
https:// github.com/TheLoonyBin/proprietary_vendor_samsung
Arunscape said:
Update: I fixed it. Just needed to add some files from theloonybin
https:// github.com/TheLoonyBin/proprietary_vendor_samsung
Click to expand...
Click to collapse
can you be more clear how you add TheloonyBin ???
is there a command line for terminal or i just copy paste from the link ?
i have left msg in slim forums as well but for different problem.
S03iT said:
can you be more clear how you add TheloonyBin ???
is there a command line for terminal or i just copy paste from the link ?
i have left msg in slim forums as well but for different problem.
Click to expand...
Click to collapse
Git clone (put the url pf theloonybin)
Then it will dowload the files in a folder called.proprietary_vendor_manufacturer
Copy the folder.of your device into ~/source/vendor/manufacturer
How To Build A Completely Unaltered AOSP 5.1.1_r5 From Source Using Linux Mint 17 For The Nexus 9
Updated to 5.1.1_r8
This build was done using Linux Mint 17.1 Cinnamin and should work in 17.1 Mate as well. I know I had trouble on other builds with the KDE version of Linux Mint but haven't tried this build. I changed it to build the 64 bit AOSP and use the 64 bit GAPPS. Updated to 5.1.1_r8
Here is a link to a compiled unaltered zip of AOSP 5.1.1_r5 I built using this guide.
https://www.dropbox.com/s/rdoh35pocqvellq/aosp_flounder64-ota-eng.kedarwolf.zip?dl=0
Will update the above link to the zip with 5.1.1_r8 ASAP.
You don't need to sign-up with DropBox to download the file, if the page opens to sign-up just hit 'No Thanks' or close the sign-up window then download the file. I chose this over Google Drive because the latter shows the contents of the zip rather then the entire file and is confusing how to download.
Bluetooth and boot error fixed in this uploaded build.
Also, the steps to fix this are included in the build thanks to fhem!
Steps:
First in Terminal: sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev zlib1g-dev:i386 libc6-dev lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 lib32z-dev libgl1-mesa-glx:i386 libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc readline-common libreadline6-dev libreadline6 lib32readline-gplv2-dev libncurses5-dev lib32readline5 lib32readline6 libreadline-dev libreadline6-dev:i386 libreadline6:i386 bzip2 libbz2-dev libbz2-1.0 libghc-bzlib-dev lib32bz2-dev libsdl1.2-dev libesd0-dev squashfs-tools pngcrush schedtool libwxgtk2.8-dev python
Had to add this to get 5.1.1_r5 build working:
sudo apt-get install bison build-essential curl flex \
g++-multilib gcc-multilib git-core gnupg gperf \
lib32ncurses5-dev lib32readline-gplv2-dev lib32z1-dev \
libesd0-dev libncurses5-dev libsdl1.2-dev \
libwxgtk2.8-dev libxml2 libxml2-utils lzop \
openjdk-6-jdk openjdk-6-jre pngcrush schedtool \
squashfs-tools xsltproc zip zlib1g-dev
Follow this with: sudo apt-get install -f
This should fix any dependency errors.
Next: sudo apt-get update
And: sudo apt-get install openjdk-7-jdk
Next download the SDK Tools For Linux x64 from this link. http://dl.google.com/android/android-sdk_r24.1.2-linux.tgz
Then: cd ~/Downloads
And: tar -xvf android-sdk_r24.1.2-linux.tgz
or tab the latest android-sdk_xxx.tgz file it they update it and it is a newer version then the one I downloaded to do this.
You can rename the android.sdk_xxx.tgz folder you extracted to SDK.
Then: cd ~/Downloads/SDK/tools
Next: ./android sdk
It will show you the tools that can be installed, just install 'Platform Tools' 'Tools' and 'Build Tools'.
Make sure you install the repo tool, in Terminal: mkdir ~/bin
Then: curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo> ~/bin/repo
And: curl http://commondatastorage.googleapis.com/git-repo-downloads/repo> ~/bin/repo
Now: sudo chmod a+x ~/bin/repo
Now: sudo nano ~/.bashrc
Add this to the bottom of the text: export PATH=~/bin:$PATH
Then hit Ctrl-O and enter, it should say it saved the file followed by Ctrl-X to exit.
Then restart bash: source ~/.bashrc
Now lets Initialize the Repository for GIT configuration
First : git config --global user.name Your Name
Then: git config --global user.email [email protected]
If you have not registered with the GitHub website just doing these two steps works fine.
If you have registered with the GitHub website create a file called .netrc in your home directory, add your GitHub password to it with no spaces on the first line and change the permissions to '600' or you will have to continually authenticate when building the source so do the following.
In Terminal:nano ~/.netrc
Then add just your GitHub password (like I said you only need to do this if you have registered with GitHub).
Then 'Ctrl-O' and enter and it'll say it saved it, then 'Ctrl-X' to exit nano.
And: chmod 0600 ~/.netrc
Now: mkdir ~/AOSP
Then: cd ~/AOSP
Now you get the source code etc: repo init -u https://android.googlesource.com/platform/manifest -b android-5.1.1_r8
Followed by: repo sync -j12
Use repo sync -j12 for a quad core CPU or Intel I5 or if you have say an quad core I7 with 8 threads you can use repo sync -j24 to speed things up etc.
I have a I7 5930k with 12 threads so I used repo sync -j36. This gives you three threads per logical CPU and speeds things along quite well.
Last time I repo'd I kept getting 'User Is Over Quota' errors but when I did repo sync j4 instead of j36 it fixed that so if you do get 'Over Quota' errors try that.
It may take several hours for the sync to finish.
Do the next commands to add the blue-tooth and boot error commits thanks to fhem.
First: cd ~/AOSP/device/htc/flounder
Then: git fetch https://github.com/craigacgomez/device_htc_flounder.git
And: git cherry-pick 79e4966c26d65112f5109d202662d2fa389ce1d3
Next: cd ~/AOSP/frameworks/base
And: git fetch https://github.com/seanashmore/frameworks_base.git
Finally: git cherry-pick 27f5b7b3bc34ebb39e4c04b40563ae7f901ea502
Then cd ~/AOSP
Next: chmod +x build/envsetup.sh
Then: . ./build/envsetup.sh
Now to select the type of device we give the following command: lunch aosp_flounder64-userdebug
Then: make -j12 otapackage or the -j36 etc. for your CPU like before.
In the /home/"yourusername"/AOSP/out/target/product/flounder you have an aosp_flounder64-ota-eng.kedarwolf.zip file to flash in your custom recovery.
You want to install a custom recovery download TWRP http://techerrata.com/browse/twrp2/flounder
Rename the file in Downloads to recovery.img
Make sure 'USB Debugging' in enabled on your tablet.
Then in Terminal with your phone connected by USB to your PC: adb root
And: adb reboot bootloader
Then: cd ~/Downloads
And: fastboot flash recovery recovery.img
If you get an error on the 'adb' and 'fastboot' commands do these first:
sudo apt-get install android-tools-adb
And: sudo apt-get install android-tools-fastboot
Alternately Wug's Nexus Root Toolkit' in Windows 8.1 or earlier is a really easy to unlock, root and install TWRP on your Nexus 9. You can do this before you install the AOSP zip on your Nexus 9. It's always worked for myself with stock Android and custom ROMs.
http://forum.xda-developers.com/nexus-9/development/toolkit-wugs-nexus-root-toolkit-v1-9-8-t2945451
Ii installs the latest SuperSU, BusyBox and TWRP.
Hold the down volume when booting your tablet then use the volume buttons to scroll to "Recovery Mode" and hit power button again to select it. You should then be in your custom recovery.
If for any reason you get a red android and no recovery just boot into fastboot mode again and reinstall the recovery.img. Never had this trouble with Wug's Toolkit in Windows so I highly recommend it.
I installed these GAPPS http://forum.xda-developers.com/android/software/gapps-google-apps-minimal-edition-t2943330
I installed the ElementalX kernel using the non-encrypted device method and it ran quite well with it.
And finally, to root your phone download SuperSu http://download.chainfire.eu/supersu and install the supersu.zip in recovery mode.
You also may want to install BusyBox from Google Play. It works with SuperSU and many apps require it for root as well.
You now have your own rooted vanilla AOSP you compiled yourself, congrats!
Great post. This should be helpful for those that desire to begin learning how to compile their own ROMs. :good:
As for the vendor fix, you can find it in Craig's Lollipopalooza thread or mine (DU).
NYCHitman1 said:
Great post. This should be helpful for those that desire to begin learning how to compile their own ROMs. :good:
As for the vendor fix, you can find it in Craig's Lollipopalooza thread or mine (DU).
Click to expand...
Click to collapse
I tried the vendor fix from the Lollipopalooza thread, for some reason it never worked.
Thanks though, hoping someone will find a working fix.
First off thanks for the great tutorial. I did this on Debian testing the other day with only minimal changes for the apt-get install part. It took me about 4 hours to sync the repo and about 2 hours to build on my older x220 thinkpad. Well worth it for the learning experience. The best thing however was flashing my very own build.
Thanks for the guide. I had a great time producing my very own ROM.
mpmilestogo said:
First off thanks for the great tutorial. I did this on Debian testing the other day with only minimal changes for the apt-get install part. It took me about 4 hours to sync the repo and about 2 hours to build on my older x220 thinkpad. Well worth it for the learning experience. The best thing however was flashing my very own build.
Thanks for the guide. I had a great time producing my very own ROM.
Click to expand...
Click to collapse
No trouble. Glad it went well for you.
Peace. :good:
Hmm, tried this, but Bluetooth seems to be broken for some reason... Any pointers to where I might have screwed up?
Great, Clear, Concise Instructions
Thanks so much for the clear write up. :good:
I've been trying to compile builds for my N4, N5, and N9 for a few days now, but none of them will boot, nor will they go beyond the initial Google splash screen.
They will state that the build has finished, but they don't boot.
Maybe you have a few pointers to share?
My system includes an i7-4770 and 16GB RAM and I'm running 14.04 Ubuntu x64.
It also has a 240GB SSD just for OSs and a 2TB HDD, and is dual booted with W8.1.
TemporaryTester said:
Hmm, tried this, but Bluetooth seems to be broken for some reason... Any pointers to where I might have screwed up?
Click to expand...
Click to collapse
I never tested bluetooth but apparently there is issue with it. According the the Lollipoppalooza thread there is a GitHub bluetooth fix. I will update the guide when I figure out how to add the GitHub fixes to this build.
http://forum.xda-developers.com/showthread.php?t=2763236 is a thread on how to add GitHub cherry picks to a build and the cherry picks are found in the posts here http://forum.xda-developers.com/nex...r-volantis-t2933831/post57925047#post57925047 if you want to try to do it yourself.
I did have trouble adding the cherry picks but I may be able to figure out a fix and add it to the build. First cherry pick I figured out the problem, just the second one I need to do as well.
tomkins0752 said:
Thanks so much for the clear write up. :good:
I've been trying to compile builds for my N4, N5, and N9 for a few days now, but none of them will boot, nor will they go beyond the initial Google splash screen.
They will state that the build has finished, but they don't boot.
Maybe you have a few pointers to share?
My system includes an i7-4770 and 16GB RAM and I'm running 14.04 Ubuntu x64.
It also has a 240GB SSD just for OSs and a 2TB HDD, and is dual booted with W8.1.
Click to expand...
Click to collapse
Did you wipe your device in Hboot in bootloader mode before installing the zip? The wipe may not be working right in TWRP. If you add this version of TWRP https://basketbuild.com/devs/USBhost/Nexus 9/recovery/TWRP and flash this zip AFTER you install the regular TWRP then the wipe will work correctly and you don't need to boot into bootloader mode and wipe in HBoot. Also if you are trying to use a custom kernel and not have your device encrypted you need to wipe using this TWRP. I had a error in Hboot and the disable encryption wipe didn't work.
Also if you want to see if it's a problem with your build download the zip in the first post of the build I made and see if it works after you wipe in Hboot.
The only other thing I can think may be wrong is a problem with your bootloader. You might want to try the flashing the bootloader from theLRX21R factory image steps found here., just scroll down. http://forum.xda-developers.com/nexus-9/development/rom-lollipopalooza-flounder-volantis-t2933831
KedarWolf said:
Did you wipe your device in Hboot in bootloader mode before installing the zip? The wipe may not be working right in TWRP. If you add this version of TWRP https://basketbuild.com/devs/USBhost/Nexus 9/recovery/TWRP and flash this zip AFTER you install the regular TWRP then the wipe will work correctly and you don't need to boot into bootloader mode and wipe in HBoot. Also if you are trying to use a custom kernel and not have your device encrypted you need to wipe using this TWRP. I had a error in Hboot and the disable encryption wipe didn't work.
Also if you want to see if it's a problem with your build download the zip in the first post of the build I made and see if it works after you wipe in Hboot.
The only other thing I can think may be wrong is a problem with your bootloader. You might want to try the flashing the bootloader from theLRX21R factory image steps found here., just scroll down. http://forum.xda-developers.com/nexus-9/development/rom-lollipopalooza-flounder-volantis-t2933831
Click to expand...
Click to collapse
Thank you for the reply.
Interestingly enough, nothing compiles into a zip. I don't believe everything is actually being built even though terminal will state it is complete.
Your build works on my N9, but nothing I build works on any of my Nexus devices. I've tried with a N4, N5, and N9.
I included a screencap of each of my different device builds.
tomkins0752 said:
Thank you for the reply.
Interestingly enough, nothing compiles into a zip. I don't believe everything is actually being built even though terminal will state it is complete.
Your build works on my N9, but nothing I build works on any of my Nexus devices. I've tried with a N4, N5, and N9.
I included a screencap of each of my different device builds.
Click to expand...
Click to collapse
Do you have enough space on the drive you're building to? I think when I checked my build AOSP folder is was 80 GBs or something crazy like that.
And did you use 'make -j12 otapackage' it doesn't make the zip without the otapackage on the end, if you don't different process for flashing the files.
KedarWolf said:
Do you have enough space on the drive you're building to? I think when I checked my build AOSP folder is was 80 GBs or something crazy like that.
And did you use 'make -j12 otapackage' it doesn't make the zip without the otapackage on the end, if you don't different process for flashing the files.
Click to expand...
Click to collapse
Yeah I'm working with 700+GB partitio on my 2TB drive.
I didn't include "otapackage" at the end, so I'm trying that now.
I had followed the instructions from the Android Source page.
tomkins0752 said:
Yeah I'm working with 700+GB partitio on my 2TB drive.
I didn't include "otapackage" at the end, so I'm trying that now.
I had followed the instructions from the Android Source page.
Click to expand...
Click to collapse
Okay, let me know how it goes.
tomkins0752 said:
Yeah I'm working with 700+GB partitio on my 2TB drive.
I didn't include "otapackage" at the end, so I'm trying that now.
I had followed the instructions from the Android Source page.
Click to expand...
Click to collapse
Are you using the binaries files that are required for mako and hammerhead? Flounder have a special partition for vendor files, that is why we don't have to use binaries files from outside...
slebit said:
Are you using the binaries files that are required for mako and hammerhead? Flounder have a special partition for vendor files, that is why we don't have to use binaries files from outside...
Click to expand...
Click to collapse
Yes, that is true, for example for the Nexus 5 add these steps. Do similiar for the Nexus 4 and/or Nexus 7 with the binaries for them.
Now you get the source code etc: repo init -u https://android.googlesource.com/platform/manifest -b android-5.1.1_r1
Followed by: repo sync -j12
Use repo sync -j12 for a quad core CPU or Intel I5 or if you have say an quad core I7 with 8 threads you can use repo sync -j24 to speed things up etc.
I have a I7 3930k with 12 threads so I used repo sync -j36. This gives you three threads per logical CPU and speeds things along quite well.
It may take several hours for the sync to finish.
After the sync finishes go to https://developers.google.com/android/nexus/drivers#hammerheadlmy47i and download the LMY47I (binaries) for the Nexus 5.
If you have closed the Terminal after the sync remember to first do this when you reopen it: cd ~/AOSP
when you open Terminal again before doing the cp and tar commands.
In Terminal: cp ~/Downloads/broadcom-hammerhead-lmy47i-4129297c.tgz ~/AOSP
Then: cp ~/Downloads/lge-hammerhead-lmy47i-1a387ac9.tgz ~/AOSP
And: cp ~/Downloads/qcom-hammerhead-lmy47i-41f93087.tgz ~/AOSP
In Terminal: tar -xvf broadcom-hammerhead-lmy47i-4129297c.tgz
And: tar -xvf/lge-hammerhead-lmy47i-1a387ac9.tgz
then: tar -xvf qcom-hammerhead-lmy47i-41f93087.tgz
They should be the file names of the binaries for LMY47I that you are extracting but if for any reason the file names are different use the Tab key and tab the correct names in after 'tar -xvf'.
If the names ARE different I'd really check to make sure you downloaded the correct hammerhead binaries.
Now also in Terminal: ./extract-broadcom-hammerhead.sh
Then: ./extract-lge-hammerhead.sh
And: ./extract-qcom-hammerhead.sh
Hint: It will show you a really long licence agreement for each binary that you scroll by hitting the Enter key that takes forever to scroll one line at a time, it has 8 sections and several subsections. Hold the Enter key until you just get past Part 8, section D of the licence and stop there. Now hit enter a few more time one key stroke at a time until you finish Part 8 section E and see the 'Type 'I ACCEPT' to agree to the licence.' and type I ACCEPT If you just scroll by holding the Enter key all the way to the bottom of the licence you'll get an error you never accepted the licence. Then close Terminal.
Then follow the rest of the guide.
TemporaryTester said:
Hmm, tried this, but Bluetooth seems to be broken for some reason... Any pointers to where I might have screwed up?
Click to expand...
Click to collapse
I'm trying a fix to the build I found and am building the 64 bit AOSP now. When the build is done will test bluetooth and let you know if it worked.
slebit said:
Are you using the binaries files that are required for mako and hammerhead? Flounder have a special partition for vendor files, that is why we don't have to use binaries files from outside...
Click to expand...
Click to collapse
I got my build to boot after a couple wipes and such.
Thank you for the guide. It helped clear things up.
KedarWolf said:
I'm trying a fix to the build I found and am building the 64 bit AOSP now. When the build is done will test bluetooth and let you know if it worked.
Click to expand...
Click to collapse
You can check out what I'm doing here -------> https://github.com/fwhem/platform_manifest.
BTW I have been running KDE Mint 17.1 64 bit on two machines since it's release with no issues.
also you can manually text edit the vendor build.prop fingerprint to match the system build.prop fingerprint to eliminate the boot error message until we get a new vendor image.
tomkins0752 said:
Thanks so much for the clear write up. :good:
I've been trying to compile builds for my N4, N5, and N9 for a few days now, but none of them will boot, nor will they go beyond the initial Google splash screen.
They will state that the build has finished, but they don't boot.
Maybe you have a few pointers to share?
My system includes an i7-4770 and 16GB RAM and I'm running 14.04 Ubuntu x64.
It also has a 240GB SSD just for OSs and a 2TB HDD, and is dual booted with W8.1.
Click to expand...
Click to collapse
There is a new build out that officially supports the Nexus 9. I updated the guide to include this, basically just change the build to repo init -u https://android.googlesource.com/platform/manifest -b android-5.1.1_r2
Not sure if this fixes the blue-tooth but i'll do a build tonight when I get home from work and check.
Build android- 5.1.1_r3
I'm currently building 5.1.1_r3 to see if it fixes blue-tooth. You just change to this repo init -u https://android.googlesource.com/platform/manifest -b android-5.1.1_r3
Been having trouble fixing conflicts by adding Git repository fixes for blue-tooth or I'd post them in the guide.
In an earlier post is how to use Git and the three repositories someone suggested be used if anyone wants to try them. Someone I messaged privately said you could just use the first repository from the link to that forum and I did seem to get that repository working and added but blue-tooth still never worked
Sorry I haven't figured out a fix, I've spent hours on just that.