[GUIDE] Compile CM from source [Full Tutorial] - Samsung Galaxy Core

How to compile CyanogenMod from source
Tutorial for building CM for your very own core.​
Prerequisites :
Linux Environment (Ubuntu is perfect match, must be 64 bit)
At least 40 GB free space on ubuntu.
Working Internet Connection (we are going to download gigs bytes of data)
Some part of your brain (must be usable )
Index
Setting Environment on Ubuntu System (64 bit) | Post 1
Download source and build for Galaxy Core | Post 2
Getting logs | Debug device | Post 3
FAQ / Help / Tips | Post 4
Chapter 1 : Setting Linux (Ubuntu) build Environment for Android
So let's first start with java installation.
# Java 6 ( one line one command in ubuntu terminal )
Code:
sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"
sudo apt-get update
sudo apt-get install sun-java6-jdk
# Installing required libs-packages
Code:
sudo apt-get install git 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 tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386
# Configuring USB Access
Code:
gksudo gedit /etc/udev/rules.d/51-android.rules
now enter/paste this in that black document :
#Acer
SUBSYSTEM==”usb”, ATTR{idVendor}==”0502″, MODE=”0666″
#ASUS
SUBSYSTEM==”usb”, ATTR{idVendor}==”0b05″, MODE=”0666″
#Dell
SUBSYSTEM==”usb”, ATTR{idVendor}==”413c”, MODE=”0666″
#Foxconn
SUBSYSTEM==”usb”, ATTR{idVendor}==”0489″, MODE=”0666″
#Garmin-Asus
SUBSYSTEM==”usb”, ATTR{idVendor}==”091E”, MODE=”0666″
#Google
SUBSYSTEM==”usb”, ATTR{idVendor}==”18d1″, MODE=”0666″
#HTC
SUBSYSTEM==”usb”, ATTR{idVendor}==”0bb4″, MODE=”0666″
#Huawei
SUBSYSTEM==”usb”, ATTR{idVendor}==”12d1″, MODE=”0666″
#K-Touch
SUBSYSTEM==”usb”, ATTR{idVendor}==”24e3″, MODE=”0666″
#KT Tech
SUBSYSTEM==”usb”, ATTR{idVendor}==”2116″, MODE=”0666″
#Kyocera
SUBSYSTEM==”usb”, ATTR{idVendor}==”0482″, MODE=”0666″
#Lenevo
SUBSYSTEM==”usb”, ATTR{idVendor}==”17EF”, MODE=”0666″
#LG
SUBSYSTEM==”usb”, ATTR{idVendor}==”1004″, MODE=”0666″
#Motorola
SUBSYSTEM==”usb”, ATTR{idVendor}==”22b8″, MODE=”0666″
#NEC
SUBSYSTEM==”usb”, ATTR{idVendor}==”0409″, MODE=”0666″
#Nook
SUBSYSTEM==”usb”, ATTR{idVendor}==”2080″, MODE=”0666″
#Nvidia
SUBSYSTEM==”usb”, ATTR{idVendor}==”0955″, MODE=”0666″
#OTGV
SUBSYSTEM==”usb”, ATTR{idVendor}==”2257″, MODE=”0666″
#Pantech
SUBSYSTEM==”usb”, ATTR{idVendor}==”10A9″, MODE=”0666″
#Philips
SUBSYSTEM==”usb”, ATTR{idVendor}==”0471″, MODE=”0666″
#PMC-Sierra
SUBSYSTEM==”usb”, ATTR{idVendor}==”04da”, MODE=”0666″
#Qualcomm
SUBSYSTEM==”usb”, ATTR{idVendor}==”05c6″, MODE=”0666″
#SK Telesys
SUBSYSTEM==”usb”, ATTR{idVendor}==”1f53″, MODE=”0666″
#Samsung
SUBSYSTEM==”usb”, ATTR{idVendor}==”04e8″, MODE=”0666″
#Sharp
SUBSYSTEM==”usb”, ATTR{idVendor}==”04dd”, MODE=”0666″
#Sony Ericsson
SUBSYSTEM==”usb”, ATTR{idVendor}==”0fce”, MODE=”0666″
#Toshiba
SUBSYSTEM==”usb”, ATTR{idVendor}==”0930″, MODE=”0666″
#ZTE
SUBSYSTEM==”usb”, ATTR{idVendor}==”19D2″, MODE=”0666″
Click to expand...
Click to collapse
Save and give it executable permission by :
Code:
sudo chmod a+r /etc/udev/rules.d/51-android.rules
# Installing repo
Code:
mkdir -p ~/bin
Open .bashrc file ( you can found it in Home directory by enabling "Show hidden files")
Add this line in ".bashrc" opened file anywhere you want :
Code:
export PATH=~/bin:$PATH
Now Getting repo and make it executable :
Code:
curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
Now you should restart your machine to take effect properly.
Chapter One Finished

Chapter 2 : Download source and build
# Syncing CM 10.2 source
Code:
mkdir cm-10.2
cd cm-10.2
repo init -u git://github.com/CyanogenMod/android.git -b cm-10.2
repo sync -j16
Tip : You can use any directory you want
Now sit back and relax, buy some patience because you are going to use it now.
This will depend on your connection speed.
# Getting CM prebuilts
Code:
vendor/cm/./get-prebuilts
# Getting device config / vendor blobs
Open .repo folder in cm-10.2 source (enable hidden files)
create directory : local_manifests
open local_manifests folder and create a xml doc. named - roomservice.xml
Copy this much of data into it :
Code:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="ankur850/android_device_samsung_arubaslim" path="device/samsung/arubaslim" remote="github" revision="cm-10.2" />
<project name="ankur850/android_vendor_qcom_msm7x27a" path="vendor/qcom/msm7x27a" remote="github" revision="cm-10.2" />
<project name="ankur850/android_device_qcom_msm7x27a" path="device/qcom/msm7x27a" remote="github" revision="cm-10.2" />
<project name="ankur850/android_vendor_samsung_arubaslim" path="vendor/samsung/arubaslim" remote="github" revision="cm-10.2" />
<project name="ankur850/android_hardware_qcom_display-legacy" path="hardware/qcom/display-legacy" remote="github" revision="jellybean-mr2" />
<project name="ankur850/android_hardware_qcom_audio-caf" path="hardware/qcom/audio-caf" remote="github" revision="cm-10.2" />
<project name="ankur850/android_kernel_samsung_msm7x27a" path="kernel/samsung/arubaslim" remote="github" revision="cm-10.2" />
</manifest>
Save it
Now again do repo sync (this will download required device config / vendors ):
Code:
repo sync -j16
Done syncing, now move to building part.
# Start Actual Building..
Code:
cd cm-10.2 && . build/envsetup.sh && brunch arubaslim
It will be finish in some hours (depends on your cpu performance)
Now get your freshly compiled rom from out/target/product/arubaslim/cm-10.2xx-xx.zip
Push to sdcard and start testing the rom.
Chapter second finished.

Chapter 3 : Taking logs and debug device
You can get the adb tools from android-sdk or move to this thread to download
http://forum.xda-developers.com/showthread.php?t=2317790
Thanks to xda Recognized Contributor @shimp208 for minimal adb tools.
# Collecting android system logcat
Code:
adb logcat -v long > logcat.txt
# Collecting kernel logs
Collecting kernel message :
Code:
adb shell su -c dmesg > dmesg.log
Collecting last message of kernel until shutdown
Code:
adb shell su -c "cat /proc/last_kmsg" > last_kmsg.log
You can use pastebin or gist to share your logcat to get some help from others for fixing bugs.
Chapter Three Finished

Chapter 4 : Help / Tips / FAQ
# PC Hardware requirements
Dual core or more
AT Least 2 GB RAM
Normal HDD with atleast 40 GB Free space
Tip : If you are using 2 GB RAM, then you'll need swap of 2 GB, for help you need to Google this
# Use CCACHE for faster builds
Open .bashrc in home folder and add these two lines anywhere :
Code:
export USE_CCACHE=1
export CCACHE_DIR=<path-to-your-cache-directory>
example : export CCACHE_DIR=~/ccache
(~ is home, so this will create in home/ccache)
Now setup max size that ccache will use
Code:
cd cm-10.2/prebuilts/misc/linux-x86/ccache
./ccache -M 10G
This will set the ccache max size upto 10 GB.
If you want to see current CCACHE status :
Code:
./ccache -s
Chapter four finished

Finally some motivation to install Ubuntu on my machine
Thank you very much, waiting for other chapters.

thanx bro....very nice info
Sent from my GT-I8262 using XDA Premium 4 mobile app

Great work
Sent from my GT-I8262 using XDA Premium 4 mobile app

MirXas said:
Finally some motivation to install Ubuntu on my machine
Thank you very much, waiting for other chapters.
Click to expand...
Click to collapse
U can dual boot ..or u can instal it via virtual box..u can google it
Sent from my GT-I8262 using XDA Premium 4 mobile app

rahul.pipaliya007 said:
U can dual boot ..or u can instal it via virtual box..u can google it
Sent from my GT-I8262 using XDA Premium 4 mobile app
Click to expand...
Click to collapse
or triple boot if you also want Windows 7 and 8, I have a tutorial for it.
I am also using triple boot , Windows 7 - Windows 8.1 - Ubuntu :victory:
Windows 7 is only for odin mode, because older samsung devices are not compatible with windows 8.1 in odin mode.

I know what is dual boot, I've done it before
Sent from my GT-I8260

ankur850 said:
or triple boot if you also want Windows 7 and 8, I have a tutorial for it.
I am also using triple boot , Windows 7 - Windows 8.1 - Ubuntu :victory:
Windows 7 is only for odin mode, because older samsung devices are not compatible with windows 8.1 in odin mode.
Click to expand...
Click to collapse
That's a hot machine! What are your computers specs?!!!!
Sent from my Amazon Otter using xda app-developers app

androvista said:
That's a hot machine! What are your computers specs?!!!!
Sent from my Amazon Otter using xda app-developers app
Click to expand...
Click to collapse
Pentium Dual Core :laugh: @ 2.50 Ghz
2 GB HD 6670 Graphics
2 GB DDR2 RAM
320 GB WD Blue HDD
160 Gb for Ubuntu
31 GB for Windows 8.1
30 GB for Windows 7
rest for Data Storage / songs / videos

Related

[GUIDE]Compile AOKP and CyanogenMod for HTC Sensation on Ubuntu (ONLY 64-bit)

First of all, BIG BIG thanks to SparksCo for his guide for compiling CM7, I used his guide as a base for this
Credits:
CyanogenMod for giving their source to everyone
SparksCo for teaching me what I know
Vorbeth for releasing the original source for Sensation
Elelinux for his hardwork on adding things to the device tree
I'm making this guide for those who don't want to wait for a new CyanogenMod or AOKP build and want to build it themselves.
Working on both ubuntu 11.10 and 12.04
NOTE: DEPENDING ON YOUR COMPUTER'S HARDWARE, COMPILING TIME WILL BE DIFFERENT
If you have a MAC OSX, I do not have a guide for that as I don't have one.
Be aware for which part is for AOKP and CyanogenMod
I have put "AOKP" and "CyanogenMod" Labels to help
EVERYTHING THAT IS IN A BOX, OPEN TERMINAL AND ENTER THE COMMAND IN THAT SECTION
Guide Requirements:
- Computer
- Common Sense
- Some Linux Experience
- Ubuntu 64-bit Installed
- At least 4GB of ram with a dual core processor.
Required Software to Install:
For 32-bit and 64-bit System
Code:
sudo apt-get install git-core gnupg flex bison python rar original-awk gawk p7zip-full gperf libsdl1.2-dev libesd0-dev libwxgtk2.6-dev squashfs-tools build-essential zip curl libncurses5-dev zlib1g-dev pngcrush schedtool xsltproc
For 64-bit System
Code:
sudo apt-get install g++-multilib lib32z1-dev ia32-libs lib32ncurses5-dev lib32readline-gplv2-dev gcc-multilib g++-multilib
Other Required Software:
Code:
sudo apt-get install libc6-dev x11proto-core-dev libx11-dev libgl1-mesa-dev mingw32 tofrodos python-markdown libxml2-utils
Link libx11
Code:
sudo ln -s /usr/lib/i386-linux-gnu/libX11.so.6 /usr/lib/i386-linux-gnu/libX11.so
You must have a 1.6.x to compile on the ics branch of cyanogenmod.
MUST Install Java 1.6 (NOT Java 1.7):
1a. Download Java JDK for Linux 64-bit from Java site
Code:
http://www.oracle.com/technetwork/java/javase/downloads/index.html
Be sure to download (## will change if there's an update):
Code:
jdk-6u##-linux-x64.bin
1b. Move the downloaded Java JDK into your home directory
1c. Be sure to completely remove ALL OTHER JAVA
Don't worry if some things are asked to be installed just accept!
Code:
sudo apt-get purge openjdk-\* icedtea-\* icedtea6-\*
1d. Copy Java JDK into /opt/java/64
Code:
sudo mkdir -p /opt/java/64/
sudo cp jdk-6u##-linux-x64.bin /opt/java/64
sudo su -
cd /opt/java/64
chmod +x jdk-6u##-linux-x64.bin
./jdk-6u##-linux-x64.bin
exit
1e. Add the needed PATH to .bashrc
Code:
gedit ~/.bashrc
Add these lines to .bashrc (Better to be near the top):
Code:
# Java PATHs
export JAVA_HOME=/opt/java/64/jdk1.6.0_##
export PATH=$PATH:$JAVA_HOME/bin
Setting Up Android SDK
2a. Download Android SDK at http://developer.android.com/sdk/index.html
2b. Extract it to your home folder [Ex. ~/android/sdk]
2c. Add Android SDK Path
gedit ~/.bashrc
Enter the Following:
Code:
#Android PATH
export PATH=$PATH:~/android/sdk
export PATH=$PATH:~/android/sdk/platform-tools
export PATH=$PATH:~/android/sdk/tools
2d. Add Extra Path For Device:
sudo gedit /etc/udev/rules.d/99-android.rules (Text Editor will open up)
Enter this in it:
Code:
#Acer
SUBSYSTEM==usb, SYSFS{idVendor}==0502, MODE=0666
#ASUS
SUBSYSTEM==usb, SYSFS{idVendor}==0b05, MODE=0666
#Dell
SUBSYSTEM==usb, SYSFS{idVendor}==413c, MODE=0666
#Foxconn
SUBSYSTEM==usb, SYSFS{idVendor}==0489, MODE=0666
#Garmin-Asus
SUBSYSTEM==usb, SYSFS{idVendor}==091E, MODE=0666
#Google
SUBSYSTEM==usb, SYSFS{idVendor}==18d1, MODE=0666
#HTC
SUBSYSTEM==usb, SYSFS{idVendor}==0bb4, MODE=0666
#Huawei
SUBSYSTEM==usb, SYSFS{idVendor}==12d1, MODE=0666
#K-Touch
SUBSYSTEM==usb, SYSFS{idVendor}==24e3, MODE=0666
#KT Tech
SUBSYSTEM==usb, SYSFS{idVendor}==2116, MODE=0666
#Kyocera
SUBSYSTEM==usb, SYSFS{idVendor}==0482, MODE=0666
#Lenevo
SUBSYSTEM==usb, SYSFS{idVendor}==17EF, MODE=0666
#LG
SUBSYSTEM==usb, SYSFS{idVendor}==1004, MODE=0666
#Motorola
SUBSYSTEM==usb, SYSFS{idVendor}==22b8, MODE=0666
#NEC
SUBSYSTEM==usb, SYSFS{idVendor}==0409, MODE=0666
#Nook
SUBSYSTEM==usb, SYSFS{idVendor}==2080, MODE=0666
#Nvidia
SUBSYSTEM==usb, SYSFS{idVendor}==0955, MODE=0666
#OTGV
SUBSYSTEM==usb, SYSFS{idVendor}==2257, MODE=0666
#Pantech
SUBSYSTEM==usb, SYSFS{idVendor}==10A9, MODE=0666
#Philips
SUBSYSTEM==usb, SYSFS{idVendor}==0471, MODE=0666
#PMC-Sierra
SUBSYSTEM==usb, SYSFS{idVendor}==04da, MODE=0666
#Qualcomm
SUBSYSTEM==usb, SYSFS{idVendor}==05c6, MODE=0666
#SK Telesys
SUBSYSTEM==usb, SYSFS{idVendor}==1f53, MODE=0666
#Samsung
SUBSYSTEM==usb, SYSFS{idVendor}==04e8, MODE=0666
#Sharp
SUBSYSTEM==usb, SYSFS{idVendor}==04dd, MODE=0666
#Sony Ericsson
SUBSYSTEM==usb, SYSFS{idVendor}==0fce, MODE=0666
#Toshiba
SUBSYSTEM==usb, SYSFS{idVendor}==0930, MODE=0666
#ZTE
SUBSYSTEM==usb, SYSFS{idVendor}==19D2, MODE=0666
SUBSYSTEM=="usb", ATTRS{idVendor}=="####:####", SYMLINK+="android_adb", MODE="0666" GROUP="plugdev"
TEST=="/var/run/ConsoleKit/database", \
RUN+="udev-acl --action=$env{action} --device=$env{DEVNAME}"
After this, close it and then enter:
Code:
sudo chmod +x /etc/udev/rules.d/99-android.rules
If your using ANY AOSP rom like AOKP or CM9 and CM10
Go into developer options and go to root access and change it from "Apps only" to Apps and ADB"
2e. Install Certain Android SDK Tools
Type:
Code:
android
Check Android SDK Tools and Android SDK platform-tools and Install them
Setting Up the .bashrc file
gedit ~/.bashrc
Enter the Following:
Code:
#Android PATH
export PATH=$PATH:~/android/sdk
export PATH=$PATH:~/android/sdk/platform-tools
export PATH=$PATH:~/android/sdk/tools
#Java PATH
export JAVA_HOME=/opt/java/64/jdk1.6.0_32
export PATH=$PATH:$JAVA_HOME/bin
3b. After your done setting this up, close .bashrc file.
Setup Workplace
4a. Download CyanogenMod 9 Source
Code:
mkdir -p ~/bin
mkdir -p ~/android/system
curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
chmod a+x ~/bin/repo (Reboot your computer after this)
4b. Add Repo Path
gedit ~/.bashrc
Enter the following:
Code:
export PATH=$PATH:~/bin
4c. Setup Necessary Source
For CyanogenMod 9
Code:
cd ~/android/system
repo init -u git://github.com/CyanogenMod/android.git -b ics
For CyanogenMod 10
Code:
cd ~/android/system
repo init -u git://github.com/CyanogenMod/android.git -b jellybean
4d. Download Necessary Source
Code:
repo sync
4e. Download Extra Needed Files
Code:
~/android/system/vendor/cm/get-prebuilts
Your Final .bashrc
It SHOULD Look Something Like This:
Code:
#Android PATH
export PATH=$PATH:~/android/sdk
export PATH=$PATH:~/android/sdk/platform-tools
export PATH=$PATH:~/android/sdk/tools
export PATH=$PATH:~/bin
#Java PATH
export JAVA_HOME=/opt/java/64/jdk1.6.0_##
export PATH=$PATH:$JAVA_HOME/bin
Building CyanogenMod
Code:
. build/envsetup.sh; lunch cm_pyramid-userdebug; mka bacon
Making a New Build
Go inside to your source folder and delete the 'out' folder
THEN Do This:
Code:
repo sync
Code:
. build/envsetup.sh; lunch cm_pyramid-userdebug; mka bacon
Compile AOKP Section
Be sure to follow the steps from the above post and ONLY use this instead of the part called 4c. Setup Necessary Source
FOR AOKP (ICS Version)
Code:
cd ~/android/system
repo init -u https://github.com/AOKP/platform_manifest.git -b ics
Temporary fix to build:
Code:
install -d prebuilt/android-arm/kernel
Then do:
Code:
curl -o prebuilt/android-arm/kernel/LINUX_KERNEL_COPYING -O https://raw.github.com/ezterry/kernel-biff-testing/ezgb-2636/COPYING
FOR AOKP (JELLYBEAN Version)
Code:
cd ~/android/system
repo init -u https://github.com/AOKP/platform_manifest.git -b jb
5b. Building AOKP
Code:
. build/envsetup.sh; lunch aokp_pyramid-userdebug; mka bacon
Compiling error solutions
error: The requested URL returned error: 403 while accessing https://android.googlesource.com/pla...blzf/info/refs:
http://forum.xda-developers.com/showpost.php?p=23205163&postcount=423
Correct repo file for ~/bin/repo:
http://forum.xda-developers.com/showpost.php?p=23174017&postcount=413
Overall repo fix:
http://forum.xda-developers.com/showpost.php?p=23147034&postcount=400
http://forum.xda-developers.com/showpost.php?p=23207819&postcount=434
Reference
This section is to help those who may look for answers
Basic Linux Commands
http://ss64.com/bash/
CyanogenMod Wiki
http://wiki.cyanogenmod.com/wiki/Main_Page
Difference between breakfast, brunch and lunch
http://synrgi.wordpress.com/2011/09/16/breakfast-brunch-and-lunch/
Installing Android SDK
http://developer.android.com/sdk/installing.html
You running a nightly?
Sent from my HTC Sensation XE with Beats Audio using Tapatalk
hi man thank you for this guide, i got a problem
when i try to install the first files for sistem 64 bit i get this error:
Package awk is a virtual package provided by:
original-awk 2011-05-06-1
mawk 1.3.3-15ubuntu2
gawk 1:3.1.8+dfsg-0.1build1
You should explicitly select one to install.
E: Package 'awk' has no installation candidate
E: Unable to locate package 7zip
You say that it is not recommended to do it in a virtual machine. What if I got 8 gigs of memory? Could I try it?? Thanx
Sent from my Sensation using XDA App
Nope.
A box is a box.
Ubuntu standalone is a very powerfull machine.
Just install 64bit and my advice to you: avoid Ubuntu. Try another version, which is compatible with this guide. I suggest Kubuntu or Xubuntu (64).
webmasteryoda said:
Nope.
A box is a box.
Ubuntu standalone is a very powerfull machine.
Just install 64bit and my advice to you: avoid Ubuntu. Try another version, which is compatible with this guide. I suggest Kubuntu or Xubuntu (64).
Click to expand...
Click to collapse
Ubuntu is fine, just strip out unity & replace with gnome shell
matt95 said:
hi man thank you for this guide, i got a problem
when i try to install the first files for sistem 64 bit i get this error:
Package awk is a virtual package provided by:
original-awk 2011-05-06-1
mawk 1.3.3-15ubuntu2
gawk 1:3.1.8+dfsg-0.1build1
You should explicitly select one to install.
E: Package 'awk' has no installation candidate
E: Unable to locate package 7zip
Click to expand...
Click to collapse
It might not be 7zip but 7za
As for awk try to install original-awk I wasn't sure actually since I had my computer setup for a long time already with everything
miniudavid said:
You say that it is not recommended to do it in a virtual machine. What if I got 8 gigs of memory? Could I try it?? Thanx
Sent from my Sensation using XDA App
Click to expand...
Click to collapse
I don't recommend virtual machines at all!
Just dual boot if you have windows that's how I setup my computer.
n1kon said:
You running a nightly?
Sent from my HTC Sensation XE with Beats Audio using Tapatalk
Click to expand...
Click to collapse
In a way yes but no, the work to get sensation cm9 at the moment is done by Vorbeth, elelinux and others.
I compiled my own and it runs pretty good honestly but there are major issues but it'll be fixed later hopefully.
Vorbeth said:
Ubuntu is fine, just strip out unity & replace with gnome shell
Click to expand...
Click to collapse
Nope. Gnome shell is a same story. Thats why I suggested kde or xfce.
webmasteryoda said:
Nope. Gnome shell is a same story. Thats why I suggested kde or xfce.
Click to expand...
Click to collapse
I like Linux Mint. They have done a great job with Gnome 3 in making a more usable interface.
Sent from my HTC Sensation Z710e using Tapatalk
After this command:
Code:
repo init -u git://github.com/CyanogenMod/android.git -b ics
I get this output:
Code:
No command 'repo' found, did you mean:
Command 'rep' from package 'rep' (universe)
Command 'repl' from package 'nmh' (universe)
Command 'repl' from package 'mailutils-mh' (universe)
repo: command not found
Any ideas?
Sym_Link said:
I like Linux Mint. They have done a great job with Gnome 3 in making a more usable interface.
Sent from my HTC Sensation Z710e using Tapatalk
Click to expand...
Click to collapse
I agree. Linux Mint has the best Gnome 3 experiance. But its still Gnome 3. Mutter is still having a major issues with Ati propriatory drivers, while the other intefaces work excellent.
I think that probably the best Ubuntu distro for cooking roms is Xubuntu. Its well optimised and free of all sorts of fancy staff.
Thanks for the detailed HOWTO
[/COLOR]
iJohnny said:
After this command:
Code:
repo init -u git://github.com/CyanogenMod/android.git -b ics
I get this output:
Code:
No command 'repo' found, did you mean:
Command 'rep' from package 'rep' (universe)
Command 'repl' from package 'nmh' (universe)
Command 'repl' from package 'mailutils-mh' (universe)
repo: command not found
Any ideas?
Click to expand...
Click to collapse
The repo script is not in your path yet. I created a directory like /home/mperry/b in first and then installed the repo script there. You can prepend the command repo with the place you put the repo script. I copied repo to /usr/bin since this is a personal system and I don't care what I violate. You could also add a path statement to your .bashrc for the user which includes the path to the bin directory you created.
miniudavid said:
You say that it is not recommended to do it in a virtual machine. What if I got 8 gigs of memory? Could I try it?? Thanx
Sent from my Sensation using XDA App
Click to expand...
Click to collapse
That should be fine but why do vm at all? I mean vm is not really good for development I.m.o.
Vorbeth said:
Ubuntu is fine, just strip out unity & replace with gnome shell
Click to expand...
Click to collapse
This is what I did but I installed kde plasma instead.
Updated the OP to be more clear and added a few things missing

[GUIDE] How To Build CM9 From Source Code Ubuntu 11.10 64-Bit

Building CM9 From Source On The Epic 4G
I just recently built CM9 for the Epic 4G since Contacts.apk and the Honeycomb Ripple Lockscreen Mod need to be built from source to work properly on our phones. If you follow my instructions exactly, you should have a working CM9 build for the Epic 4G. You can then modify whatever you need to customize your apks, jar files, etc.
Now lets get started. You will need to install Ubuntu 11.10 64-Bit on your computer. It can be a virtual machine, an install using Wubi, or an actual partition for Ubuntu. You will need at least 30gb available for Ubuntu since the repository and the build take up a lot of space.
(Note: It Must Be Ubuntu 11.10 64-Bit And Have A Working Internet Connection!)
Install Java JDK
Once Ubuntu is installed the first thing you will need to do is install Java JDK. Open up a terminal or press Ctrl+Alt+T on the keyboard and copy the following commands:
Code:
sudo add-apt-repository ppa:ferramroberto/java
sudo apt-get update
sudo apt-get install sun-java6-jdk sun-java6-plugin
After the first command is entered, it will ask you for your password. Enter it and continue with the commands. Once Java is about to install, it will tell you how much additional disk space Java will add to your hard drive and ask if you want to continue. Press Y and hit Enter. When Java is done installing, you should see a window that pops up with the Java Licensing Agreement. Use the arrow keys or the Tab key on your keyboard to navigate to the OK button and press Enter. Then Navigate to Yes and hit Enter again. Java is now installed on your Computer!
Install Android SDK For Linux
Next, you will need to install android sdk. Google search android sdk and it should be the first link that pops up. Click on it and download android-sdk_r18-linux.tgz for Linux. Now go back to your terminal and enter the following commands:
Code:
cd Downloads
tar -xvzf android-sdk_r18-linux.tgz
rm *.tgz
mv android-sdk-linux/ ..
cd ../android-sdk-linux/
In case you don't know what you just did, you navigated to your Downloads folder and extracted the android-sdk-linux folder. Then you deleted the compressed file and moved your android-sdk-linux folder to your Home directory. Finally, you navigated to your android-sdk-linux folder.
Now we need to open the Android SDK Manager and download the necessary packages. In the terminal, copy:
Code:
tools/android
It should pop up the Android SDK Manager. Now make sure the Tools folder, and Android 4.0.3 (API 15) packages are selected and click on Install Packages. Check Accept All and click on Install. Once all the packages have been loaded, close out of the Download window and the Android SDK Manager. Go back to your terminal and Type:
Code:
cd
This will navigate you back to your Home Directory.
The Rest Of The Guide Will Need To Be Done In The Root Terminal!
In the terminal type:
Code:
sudo -i
Then enter your password. You are now logged in as root! (Or superuser)
Install Packages
Now we need to install all the necessary packages to make the CM9 build. In the terminal, copy:
Code:
apt-get install python git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev libncurses5-dev lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline-gplv2-dev lib32z-dev libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils libsdl1.2-dev libesd0-dev libwxgtk2.6-dev squashfs-tools build-essential pngcrush schedtool gcc-multilib
Again, press Y and hit Enter.
Configuring USB
Time to set up all devices to work with USB.
Code:
gksudo gedit /etc/udev/rules.d/51-android.rules
This will create a new file to configure the USB devices. Copy and paste this into the file:
Code:
#Acer
SUBSYSTEM==usb, SYSFS{idVendor}==0502, MODE=0666
#ASUS
SUBSYSTEM==usb, SYSFS{idVendor}==0b05, MODE=0666
#Dell
SUBSYSTEM==usb, SYSFS{idVendor}==413c, MODE=0666
#Foxconn
SUBSYSTEM==usb, SYSFS{idVendor}==0489, MODE=0666
#Garmin-Asus
SUBSYSTEM==usb, SYSFS{idVendor}==091E, MODE=0666
#Google
SUBSYSTEM==usb, SYSFS{idVendor}==18d1, MODE=0666
#HTC
SUBSYSTEM=="usb", SYSFS{idVendor}=="0bb4", MODE=0666
#Huawei
SUBSYSTEM==usb, SYSFS{idVendor}==12d1, MODE=0666
#K-Touch
SUBSYSTEM==usb, SYSFS{idVendor}==24e3, MODE=0666
#KT Tech
SUBSYSTEM==usb, SYSFS{idVendor}==2116, MODE=0666
#Kyocera
SUBSYSTEM==usb, SYSFS{idVendor}==0482, MODE=0666
#Lenevo
SUBSYSTEM==usb, SYSFS{idVendor}==17EF, MODE=0666
#LG
SUBSYSTEM==usb, SYSFS{idVendor}==1004, MODE=0666
#Motorola
SUBSYSTEM==usb, SYSFS{idVendor}==22b8, MODE=0666
#NEC
SUBSYSTEM==usb, SYSFS{idVendor}==0409, MODE=0666
#Nook
SUBSYSTEM==usb, SYSFS{idVendor}==2080, MODE=0666
#Nvidia
SUBSYSTEM==usb, SYSFS{idVendor}==0955, MODE=0666
#OTGV
SUBSYSTEM==usb, SYSFS{idVendor}==2257, MODE=0666
#Pantech
SUBSYSTEM==usb, SYSFS{idVendor}==10A9, MODE=0666
#Philips
SUBSYSTEM==usb, SYSFS{idVendor}==0471, MODE=0666
#PMC-Sierra
SUBSYSTEM==usb, SYSFS{idVendor}==04da, MODE=0666
#Qualcomm
SUBSYSTEM==usb, SYSFS{idVendor}==05c6, MODE=0666
#SK Telesys
SUBSYSTEM==usb, SYSFS{idVendor}==1f53, MODE=0666
#Samsung
SUBSYSTEM==usb, SYSFS{idVendor}==04e8, MODE=0666
#Sharp
SUBSYSTEM==usb, SYSFS{idVendor}==04dd, MODE=0666
#Sony Ericsson
SUBSYSTEM==usb, SYSFS{idVendor}==0fce, MODE=0666
#Toshiba
SUBSYSTEM==usb, SYSFS{idVendor}==0930, MODE=0666
#ZTE
SUBSYSTEM==usb, SYSFS{idVendor}==19D2, MODE=0666
Save the file and close the window. Next set the permissions for the file you just created:
Code:
chmod a+r /etc/udev/rules.d/51-android.rules
Installing Repo
Next, we need to install the CM9 repository.
Code:
mkdir ~/bin
gedit /etc/environment
This will open up your Environment Variables so you can use adb and other commands no matter what directory you're in.
Copy and paste this into the end of the file:
Code:
:/home/gooch/android-sdk-linux/tools:/home/gooch/android-sdk-linux/platform-tools:/root/bin
Replace gooch with your Username that you set up and make sure to leave the quotes! It should look like one big line.
Now Logout and Log back in! This will update your Environment Variables.
Once you're logged back in, open up the terminal and log back in as root:
Code:
sudo -i
Enter your password and then copy the following commands:
Code:
curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
chmod a+x ~/bin/repo
mkdir CM9
cd CM9
repo init -u git://github.com/CyanogenMod/android.git -b ics
repo sync
These commands will set everything up and download the CM9 repository. (This will take a long time to download!)
(Note: If your download freezes or hangs, close the terminal and open up a new one. Log back into root and repeat these steps)
Code:
cd CM9
repo sync
This will continue where you left off. Once everything is synced, enter in the terminal:
Code:
nautilus
This will open up a root file explorer. navigate to the CM9/device/samsung folder and see if there is a folder called "epicmtd". If there is, skip to Copy Proprietary Files. If not, close the file explorer and type:
Code:
brunch epicmtd
This should gather the epicmtd folder for you. If it starts to build, exit the terminal Immediately!
Open another terminal, log into root, and open up the root file explorer again:
Code:
nautilus
Check if the "epicmtd" is there again. If it's there, Navigate back to the CM9 folder and then navigate to the out/target/product folder. If there is a folder called "epicmtd", delete it and close the root file explorer.
Copy Proprietary Files
Next you need to download the proprietary files from your phone. You must have a working CM9 ROM currently on your phone. Make sure USB Debugging is on and plug your phone into your computer. (You can find this under Settings-Developer Options-USB Debugging)
In the terminal, navigate the the "CM9" folder if you're not already there:
Code:
cd CM9
Then copy the following commands:
Code:
cd device/samsung/epicmtd
./extract-files.sh
This will gather all the necessary files needed from your phone. Once this is finished, navigated back to the "CM9" folder by entering:
Code:
cd
cd CM9
Now enter:
Code:
vendor/cm/get-prebuilts
(Note: The whole "Copy Proprietary Files" step only needs to be done once to set everything up!)
Build Source
Finally, We can build the CM9 Source Code.
In the terminal, copy the commands:
Code:
. build/envsetup.sh
brunch epicmtd
This will take a while, but if you set up everything correct, you should have a working, flashable CM9 ROM in the CM9/out/target/product/epicmtd folder. The .zip is called something like "update-cm-9.0.0-RC0-epicmtd-KANG-signed".
Copy that to your phone's SD Card and reboot into recovery mode. Wipe user data, cache, and dalvik cache, and flash. If it installs and your phone boots up with CM9, You just made a successful build!
You can delete the "epicmtd" folder created in the CM9/out/target/product directory by running in CM9 directory:
Code:
make clobber
Now you can modify the Source Code, and build again by issuing these two simple commands:
Code:
. build/envsetup.sh
brunch epicmtd
I hope you enjoyed this tutorial and that it helped you. Start building!
Thanks to UberPinguin for helping me with my Source Build
let me first off say thanks for this i have book marked and subscribed and FIRST for the first time lol
Second!!! Gonna set this up now!
Writen in plain english. Amazing!
It's building! (Nexus)
Good job man!
Broadcast to the public; to promote self awareness.
You can just run 'make clean', if I recall correctly. And it'll remove the epicmtd directory within /out section so that you can build again. No need to manually remove it.
Sent from my SPH-D700 using xda premium
AproSamurai said:
You can just run 'make clean', if I recall correctly. And it'll remove the epicmtd directory within /out section so that you can build again. No need to manually remove it.
Sent from my SPH-D700 using xda premium
Click to expand...
Click to collapse
Thanks, I'll test and make sure that works.
Sent from my CM9 Epic Blue Mist using xda premium
make clobber will wipe the out folder.
Also, ubuntu uses gcc 4.6 which causes problems if try any custom optimization. I personally use debian32 with gcc 4.4.
Another tip is you can add the gihub CyanogemMod vendor samsung epicmtd to your local_manifest.xml instead of pulling the vendor files from your own phone.
Sent from my SPH-D700 using XDA App
Thanks for this!
Sent from my SPH-D700 using xda premium
There you go, it was clobber lmao. Hahaha I was thinking of something else.:| Apologies.
Sent from my SPH-D700 using xda premium
Awesome, thanks guys.
Sent from my CM9 Epic Blue Mist using xda premium
chuckdez said:
make clobber will wipe the out folder.
Also, ubuntu uses gcc 4.6 which causes problems if try any custom optimization. I personally use debian32 with gcc 4.4.
Another tip is you can add the gihub CyanogemMod vendor samsung epicmtd to your local_manifest.xml instead of pulling the vendor files from your own phone.
Sent from my SPH-D700 using XDA App
Click to expand...
Click to collapse
Soooooo.....git://github.com/CyanogenMod/android.git -b Samsung epicmtd?
Broadcast to the public; to promote self awareness.
Thank You OP for NOT giving in to the Windows / Mac (WaC) quid pro quo!
deciple said:
Soooooo.....git://github.com/CyanogenMod/android.git -b Samsung epicmtd?
Broadcast to the public; to promote self awareness.
Click to expand...
Click to collapse
modify the .repo/local_manifest.xml in the CM9 folder.
This has the device, vendor and kernel files.
Code:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project path="device/samsung/epicmtd" name="CyanogenMod/android_device_samsung_epicmtd" remote="github" revision="ics"/>
<project path="kernel/samsung/victory" name="CyanogenMod/android_kernel_samsung_victory" remote="github" revision="ics"/>
<project path="vendor/samsung" name="koush/proprietary_vendor_samsung" remote="github" revision="ics"/>
</manifest>
Cant seem to get past the brunch epicmtd part guys. Where should I execute this command?
Its saying brunch command not found
It have to be specifically on 11.10? I have 10.04 for compatibility reasons and plan on giving this a whirl .
Sent from my SPH-D700 using xda premium
I did it on 11.04
Broadcast to the public; to promote self awareness.
Big Goron said:
It have to be specifically on 11.10? I have 10.04 for compatibility reasons and plan on giving this a whirl .
Sent from my SPH-D700 using xda premium
Click to expand...
Click to collapse
It will work on every debian based OS. I am using Linux Mint Debian and I can compile fine.
Sent from my SPH-D700 using Tapatalk
I succesfully get the repo but once I type nautilus I get something about user sharing.
I proceed and then it says brunch is not a command.
In the pastebin is what comes out on the terminal/
http://pastebin.com/409YjyBi
joe_d08_17 said:
I succesfully get the repo but once I type nautilus I get something about user sharing.
I proceed and then it says brunch is not a command.
In the pastebin is what comes out on the terminal/
http://pastebin.com/409YjyBi
Click to expand...
Click to collapse
Make sure your build environment is setup by issuing the following command in CM9 folder.
. build/envsetup.sh
Note the space between the dot and the word build.
Sent from my SPH-D70buildng XDA App
So where are the files that you edit before you build?

[Tutorial][S4] How to make your very own Jellybean 4.1.1 on the HTC One S!

Hello everyone! I am anxiously awaiting jellybean for our phone and I know that many of you are also, so I decided to make this thread and help speed things up ! I am currently watching my repo sync so I am hard at work developing this for us but other users can work to, so we get it done faster . So if you are not on ubuntu 10 or 11, LEAVE because this is likely not going to work for you . A few things first: 1. the "$" is an indication of the command, there is one $ before every command and it is already in your terminal so do not type it. 2. You may want to copy and paste commands... 3. This will either not boot or have many bugs, as expected.
There are currently 2 JB roms available, here (by me) and here (by djsubtronic)
GENERAL JELLYBEAN THREAD IS HERE
1) First thing is first, install the required packages:
Open terminal and KEEP IT OPEN FOR ALL OF THIS!!!!!!!!!!!!
Code:
$ sudo apt-get install openjdk-6-jdk
$ sudo apt-get install python
$ sudo apt-get install git-core
Next, download the android sdk for linux and extract it to your home directory. Name it "android-sdk" (without the quotes) for simplicity. In you home folder, show the hidden files (hit Ctrl + H). Open the .bashrc file in the text editor. Add the following lines at the bottom (end) of it:
Code:
# Android tools
export PATH=${PATH}:~/android-sdk/tools
export PATH=${PATH}:~/android-sdk/platform-tools
export PATH=${PATH}:~/bin
Save it and then go back to the home folder. Edit the .profile file and add this to the end:
Code:
PATH="$HOME/android-sdk/tools:$HOME/android-sdk/platform-tools:$PATH"
You now have the sdk installed. In your terminal, enter:
Code:
$ cd android-sdk
$ android
When the sdk manager pops up, download platform-tools, and update the tools folder if needed.
If it does not pop up, try one the following 3 commands and see if it does:
Code:
$ cd tools
$ android
Or
Code:
$ cd platfrom-tools
$ android
Code:
$ cd
$ android
And if none of those bring up the manager, close your terminal window. Then open terminal and type:
Code:
$ android
MORE FILES?!?!?! Yes.
Code:
$ sudo apt-get install git-core gnupg flex bison gperf build-essential \
zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs \
x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev \
libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown \
libxml2-utils
$ sudo ln -s /usr/lib/i386-linux-gnu/libX11.so.6 /usr/lib/i386-linux-gnu/libX11.so
$ sudo apt-get install git-core gnupg flex bison gperf build-essential \
zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \
libgl1-mesa-dev g++-multilib mingw32 openjdk-6-jdk tofrodos \
python-markdown libxml2-utils xsltproc zlib1g-dev:i386
$ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
Finally! Past the downloads (for now... wait for the repo sync)
2) Configure the usb:
Code:
$ gksudo gedit /etc/udev/rules.d/51-android.rules
In the blank text field, paste the following:
Code:
#Acer
SUBSYSTEM=="usb", ATTR{idVendor}=="0502", MODE="0666"
#ASUS
SUBSYSTEM=="usb", ATTR{idVendor}=="0b05", MODE="0666"
#Dell
SUBSYSTEM=="usb", ATTR{idVendor}=="413c", MODE="0666"
#Foxconn
SUBSYSTEM=="usb", ATTR{idVendor}=="0489", MODE="0666"
#Garmin-Asus
SUBSYSTEM=="usb", ATTR{idVendor}=="091E", MODE="0666"
#Google
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666"
#HTC
SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666"
#Huawei
SUBSYSTEM=="usb", ATTR{idVendor}=="12d1", MODE="0666"
#K-Touch
SUBSYSTEM=="usb", ATTR{idVendor}=="24e3", MODE="0666"
#KT Tech
SUBSYSTEM=="usb", ATTR{idVendor}=="2116", MODE="0666"
#Kyocera
SUBSYSTEM=="usb", ATTR{idVendor}=="0482", MODE="0666"
#Lenevo
SUBSYSTEM=="usb", ATTR{idVendor}=="17EF", MODE="0666"
#LG
SUBSYSTEM=="usb", ATTR{idVendor}=="1004", MODE="0666"
#Motorola
SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", MODE="0666"
#NEC
SUBSYSTEM=="usb", ATTR{idVendor}=="0409", MODE="0666"
#Nook
SUBSYSTEM=="usb", ATTR{idVendor}=="2080", MODE="0666"
#Nvidia
SUBSYSTEM=="usb", ATTR{idVendor}=="0955", MODE="0666"
#OTGV
SUBSYSTEM=="usb", ATTR{idVendor}=="2257", MODE="0666"
#Pantech
SUBSYSTEM=="usb", ATTR{idVendor}=="10A9", MODE="0666"
#Philips
SUBSYSTEM=="usb", ATTR{idVendor}=="0471", MODE="0666"
#PMC-Sierra
SUBSYSTEM=="usb", ATTR{idVendor}=="04da", MODE="0666"
#Qualcomm
SUBSYSTEM=="usb", ATTR{idVendor}=="05c6", MODE="0666"
#SK Telesys
SUBSYSTEM=="usb", ATTR{idVendor}=="1f53", MODE="0666"
#Samsung
SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", MODE="0666"
#Sharp
SUBSYSTEM=="usb", ATTR{idVendor}=="04dd", MODE="0666"
#Sony Ericsson
SUBSYSTEM=="usb", ATTR{idVendor}=="0fce", MODE="0666"
#Toshiba
SUBSYSTEM=="usb", ATTR{idVendor}=="0930", MODE="0666"
#ZTE
SUBSYSTEM=="usb", ATTR{idVendor}=="19D2", MODE="0666"
Save the new text file and close it. Enter this command in your terminal window:
Code:
$ sudo chmod a+r /etc/udev/rules.d/51-android.rules
3) Installing the repo:
Code:
$ mkdir ~/bin
$ PATH=~/bin:$PATH
$ curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
$ chmod a+x ~/bin/repo
4) Initialize (init) the repo:
Code:
$ mkdir WORKING_DIRECTORY
$ cd WORKING_DIRECTORY
$ repo init -u https://android.googlesource.com/platform/manifest -b android-4.1.1_r1
or, if you want to do CM10, replace the last line (repo init -u blahblahblah) with:
Code:
$ repo init -u git://github.com/CyanogenMod/android.git -b jellybean
4.5) If you already have the repo initialized and all of the above done, and are just starting over, do this:
Code:
$ cd WORKING_DIRECTORY
$ repo init -b android-4.1.1_r1
$ repo sync
Don't do it if you are starting new.
5) Sync the needed files (repo)
Code:
$ repo sync -j1
When it asks, enter your REAL name and email
6) Compile:
Code:
$ source build/envsetup.sh
or
Code:
$ . build/envsetup.sh
7) Who's hungry?
Code:
$ lunch
Seriously, you have to!
8) Adding HTC One S (ville) to the list
Code:
$ cd WORKING_DIRECTORY/device
$ mkdir htc
$ cd htc
9) I have no name for this (github sync )
Code:
$ git clone git://github.com/intervigilium/android_device_htc_ville.git -b jellybean-ril ville
or
Code:
$ git clone git://github.com/intervigilium/android_device_htc_ville.git -b jellybean ville
10) Navigate to "ville"
Code:
$ cd ville
11) Connect your HTC One S to the computer and verify that adb is working (usb debugging) and once that is verified do this:
Code:
$ ./extract-files.sh
You can disconnect after this is done.
11.5) Every .cpp file in device/htc/ville/libsensors needs these lines to be added after the #includes section:
Code:
#define LOGE
#define LOGE_IF
The following lines must be added to /device/htc/ville/liblights/lights.c after the #includes section:
Code:
#define LOGE
#define LOGE_IF
#define LOGV
(Thanks to djsubtronic for this step!)
12) Time to build!
Code:
$ cd ~/WORKING_DIRECTORY
then:
Code:
$ source build/envsetup.sh
or
Code:
$ . build/envsetup.sh
13) Verify the ville is there:
Code:
$ lunch
14) Choose from the list
15) Compile!
The # stand for the number of cores plus one (Example: my VAIO has 2 cores so I do -j3, if it were quad core I would do -j5)
Code:
$ make -j#
Flashable zip command (instead of above command):
Code:
$ make -j# otapackage
Thanks to dastin1015 for this (Look at it for a general build): http://forum.xda-developers.com/showthread.php?t=1762641
Thanks to everyone with a ville github account!
Post your results in this thread. Also, ask questions here too!
If I have done something wrong, just tell me politely what it is and I will fix it. It is late here and this is a long thread so there is likely at least one mistake. Thanks!
ERRORS AND FIXES:
Code:
build/core/product_config.mk:205: *** No matches for product "device_ville". Stop.
** Don't have a product spec for: 'device_ville'
** Do you have the right repo manifest?
Add this:
Code:
PRODUCT_NAME := device_ville
PRODUCT_DEVICE := ville
PRODUCT_BRAND := Android
PRODUCT_MODEL := Full Android on ville
to the bottom (end) of device_ville.mk
Ville does not show up in lunch menu? Make the file "vendorsetup.sh". Edit it and add this:
Code:
add_lunch_combo device_ville-userdebug
Nice
Enviado desde mi HTC One S usando Tapatalk 2
Reserved for fixes and updates
Nice one.
You can add that every .cpp file in device/htc/ville/libsensors needs these lines to be added after the #includes section:
Code:
#define LOGE
#define LOGE_IF
djsubtronic said:
Nice one.
Click to expand...
Click to collapse
I'll post pictures tomorrow or the next day
djsubtronic said:
Nice one.
You can add that every .cpp file in device/htc/ville/libsensors needs these lines to be added after the #includes section:
Code:
#define LOGE
#define LOGE_IF
Click to expand...
Click to collapse
How would I say that (under what step do you recommend)
BiteBlaze said:
How would I say that (under what step do you recommend)
Click to expand...
Click to collapse
Needs to be done before make, so I would say just before the build steps.
djsubtronic said:
Needs to be done before make, so I would say just before the build steps.
Click to expand...
Click to collapse
I'll add that now
I won't be able to post pictures until monday so if anyone has screenshots of the terminal window at certain points in the instructions, email me. Goodnight and good luck!
Has anybody tried doing this?
Reviewers said:
Has anybody tried doing this?
Click to expand...
Click to collapse
There is a check the general sections topic on Jelly Bean. There are plenty of people trying. The only one with a booting build thus far is Team Liquid's Nocoast.
Why doesn't it work on ubuntu 10.04?
Add to OP after the libsensors bit:
The following lines must be added to /device/htc/ville/liblights/lights.c after the #includes section
Code:
#define LOGE
#define LOGE_IF
#define LOGV
---------- Post added at 12:31 PM ---------- Previous post was at 12:03 PM ----------
Stuck on this:
in function wpa_driver_nl80211_ops:driver_nl80211.c(.data.rel. ro.wpa_driver_nl80211_ops+0x1c8): error: undefined reference to 'wpa_driver_nl80211_driver_cmd'
Added this line to device/htc/ville/BoardConfig.mk: BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_wl12xx
and then got another error...
make: *** No rule to make target `out/target/product/ville/obj/STATIC_LIBRARIES/lib_driver_cmd_wl12xx_intermediates/lib_driver_cmd_wl12xx.a', needed by `out/target/product/ville/obj/EXECUTABLES/wpa_supplicant_intermediates/LINKED/wpa_supplicant'. Stop.
How to get that file?
Alie360 said:
Why doesn't it work on ubuntu 10.04?
Click to expand...
Click to collapse
It does. It doesn't work on 12
~ BiteBlaze via HTC One S... If I have helped you out, hit the Thanks button
BiteBlaze said:
It does. It doesn't work on 12
~ BiteBlaze via HTC One S... If I have helped you out, hit the Thanks button
Click to expand...
Click to collapse
You wrote "So if you are not on ubuntu 10 or 11, LEAVE because this is likely not going to work for you "...
I was assuming it was working only on 12
Alie360 said:
You wrote "So if you are not on ubuntu 10 or 11, LEAVE because this is likely not going to work for you "...
I was assuming it was working only on 12
Click to expand...
Click to collapse
Haha ok I get it you had it backwards. I mean that only people on 10 or 11 can do this ("If you are NOT on ubuntu 10 or 11, this is likely not going to work for you)
djsubtronic said:
Add to OP after the libsensors bit:
The following lines must be added to /device/htc/ville/liblights/lights.c after the #includes section
Code:
#define LOGE
#define LOGE_IF
#define LOGV
---------- Post added at 12:31 PM ---------- Previous post was at 12:03 PM ----------
Stuck on this:
in function wpa_driver_nl80211_ops:driver_nl80211.c(.data.rel. ro.wpa_driver_nl80211_ops+0x1c8): error: undefined reference to 'wpa_driver_nl80211_driver_cmd'
Added this line to device/htc/ville/BoardConfig.mk: BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_wl12xx
and then got another error...
make: *** No rule to make target `out/target/product/ville/obj/STATIC_LIBRARIES/lib_driver_cmd_wl12xx_intermediates/lib_driver_cmd_wl12xx.a', needed by `out/target/product/ville/obj/EXECUTABLES/wpa_supplicant_intermediates/LINKED/wpa_supplicant'. Stop.
How to get that file?
Click to expand...
Click to collapse
Added to the OP. Did you find the file?
BiteBlaze said:
Added to the OP. Did you find the file?
Click to expand...
Click to collapse
I undid the change from BoardConfig.mk
http://translate.google.co.uk/trans...a=X&ei=crACUOCNFOeY1AXcxNWzBw&ved=0CHAQ7gEwCQ
That link has a link to a git that has drivers for the nl80211, wpa_supplicant, and hostapd. Trying to get it to work using those files.
djsubtronic said:
I undid the change from BoardConfig.mk
http://translate.google.co.uk/trans...a=X&ei=crACUOCNFOeY1AXcxNWzBw&ved=0CHAQ7gEwCQ
That link has a link to a git that has drivers for the nl80211, wpa_supplicant, and hostapd. Trying to get it to work using those files.
Click to expand...
Click to collapse
Good. I will try tomorrow. I am glad to say they are upgrading my internet to about 15MBs! I should get a good build on monday
villainhalf said:
There is a check the general sections topic on Jelly Bean. There are plenty of people trying. The only one with a booting build thus far is Team Liquid's Nocoast.
Click to expand...
Click to collapse
I think I will post a link to the general thread in the OP. Nocoast refuses to release it or give us any more info... hopefully some info comes today... maybe screenshots? Or hopefully what the issues are and maybe a logcat

[DEV] - Pantech Burst - CM10 porting

This thread is for the development of Cyanogenmod for Pantech Burst. Any help is greatly appreciated. Below is somewhere to start from but will be adding more as we progress.
Pantech Burst CM10 Discussion thread <----Use this to ask questions. This thread is for development only
Pantech Burst Forum
Are you a dev? want to help the burst in its custom development journey? JOIN THE CHAT!!!
http://webchat.freenode.net/?channels=#burstroot
mifl said:
For anyone who wants to contribute to the project, I created an organization on Github: https://github.com/PrestoTeam.
Here have been added the five repositories needed to work:
https://github.com/PantechDevTeam/android_device_pantech_presto
https://github.com/PantechDevTeam/android_device_pantech_qcom-common
https://github.com/PantechDevTeam/android_device_pantech_msm8660-common
https://github.com/PantechDevTeam/android_kernel_pantech_p9070
https://github.com/PantechDevTeam/android_vendor_pantech_presto
These are the steps that I think we should follow:
Register an account on "Github". It is simple and there are many tutorials.
Make a backup of local files, to keep the changes you have made ​​each user.
Make a fork of the three repositories is on Github organization, and put in your local_manifest.xml.
Remove your "/ out" dir, $repo sync and compile again.
Well I think we can move faster. Without doubt the changes that each user has done on your computer. So each user, using the button "Pull Request", can send the modifications that wants, to repository team. We can discuss changes in the Github page or in this post.
I hope everyone likes this proposal.
You can try to add your Github account. Don't be angry, if it takes a little time before adding your account, I'm still learning.
------------------------------------------------------------------------------------
To begin working with the repositories, you can follow these links:
http://forum.xda-developers.com/showpost.php?p=35474318&postcount=245
http://forum.xda-developers.com/showpost.php?p=33642150&postcount=1
If you have questions about how to do any of the above steps ask here, we will try to help everyone to be resolved as quickly as possible.
Please friends, remember that this is a post to development our rom.
------------------------------------------------------------------------------------
Greetings.
Click to expand...
Click to collapse
Working / Bugs List yet -
Touch
Mobile Data Both 2G/3G , 4G isn't available here
Bluetooth
Wifi
Audio
Haptic feedback
Backlight on keys
Gallery
ADB
External SD support
Mount USB
GPS
All Apk's And Games worked fine also .
What Is essential to be fixed more to use on daily basis :-
Hardware Decoder , Though videos got played with software decoder .
Camera + flashlight
For a complete stable rom these things also needed to be fixed :-
proximity sensor ( half works )
Magneto sensor ( Needs to be tested )
more to come as we find them
***Last updated 3/15/2013 @ 12:00pm EST***
Compile Unofficial CyanogenMod 10 for Pantech Burst
To compile Unofficial CyanogenMod for Pantech Burst P9070 (presto), following the next steps.
1º - Prepare the Build Environment:
This step is based on the following tutorial: [Tutorial] Compile JB on Ubuntu - Thanks dastin1015.
A) Install Python and Git:
Code:
$ sudo apt-get install python
Code:
$ sudo apt-get install git-core
B) Install Android SDK:
- Download the SDK here: http://developer.android.com/sdk/index.html
- Extract the SDK and place it in your home directory.
- I renamed my SDK to android-sdk to make it easier to navigate to.
- Go to your home folder, press Ctrl+H to show hidden files, and open up your .bashrc file.
- Add these lines at the bottom of the file:
Code:
# Android tools
export PATH=${PATH}:~/android-sdk/tools
export PATH=${PATH}:~/android-sdk/platform-tools
export PATH=${PATH}:~/bin
- Find your .profile file and add this at the bottom of the file:
Code:
PATH="$HOME/android-sdk/tools:$HOME/android-sdk/platform-tools:$PATH"
You have now successfully installed the Android SDK.
To check for updates issue this into your terminal:
Code:
$ android
C) Install required packages:
Building on Ubuntu 10.10/11.10:
Code:
$ sudo apt-get install git-core gnupg flex bison gperf build-essential \
zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs \
x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev \
libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown \
libxml2-utils xsltproc
On Ubuntu 10.10:
Code:
$ sudo ln -s /usr/lib32/mesa/libGL.so.1 /usr/lib32/mesa/libGL.so
On Ubuntu 11.10:
Code:
$ sudo apt-get install libx11-dev:i386
On newer versions of Ubuntu such as 11.10 you may need to do the following:
Code:
$ sudo ln -s /usr/lib/i386-linux-gnu/libX11.so.6 /usr/lib/i386-linux-gnu/libX11.so
Building on Ubuntu 12.04/10:
Code:
$ sudo apt-get install git-core gnupg flex bison gperf build-essential \
zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \
libgl1-mesa-dev g++-multilib mingw32 openjdk-6-jdk tofrodos \
python-markdown libxml2-utils xsltproc zlib1g-dev:i386 \
pngcrush optipng
Code:
$ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
D) Install Oracle Java 6:
To install Oracle Java 6 in Ubuntu via PPA: http://www.webupd8.org/2012/11/oracle-sun-java-6-installer-available.html
Code:
$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update
$ sudo apt-get install oracle-java6-installer
After the installation, check the version of java, using the command:
Code:
$ java -version
Output console:
Code:
java version "1.6.0_38"
Java(TM) SE Runtime Environment (build 1.6.0_38-b05)
Java HotSpot(TM) 64-Bit Server VM (build 20.13-b02, mixed mode)
Note: The installed version of java, may have been updated, but should be kept in version 1.6.XX
Verify the symlinks:
Code:
$ ls -la /etc/alternatives/java* && ls -la /etc/alternatives/jar
Output console:
Code:
lrwxrwxrwx 1 root root 39 ene 17 08:02 /etc/alternatives/java -> /usr/lib/jvm/java-6-oracle/jre/bin/java
lrwxrwxrwx 1 root root 45 ene 17 08:02 /etc/alternatives/java.1.gz -> /usr/lib/jvm/java-6-oracle/man/man1/java.1.gz
lrwxrwxrwx 1 root root 36 ene 17 08:02 /etc/alternatives/javac -> /usr/lib/jvm/java-6-oracle/bin/javac
lrwxrwxrwx 1 root root 46 ene 17 08:02 /etc/alternatives/javac.1.gz -> /usr/lib/jvm/java-6-oracle/man/man1/javac.1.gz
lrwxrwxrwx 1 root root 38 ene 17 08:02 /etc/alternatives/javadoc -> /usr/lib/jvm/java-6-oracle/bin/javadoc
lrwxrwxrwx 1 root root 48 ene 17 08:02 /etc/alternatives/javadoc.1.gz -> /usr/lib/jvm/java-6-oracle/man/man1/javadoc.1.gz
lrwxrwxrwx 1 root root 36 ene 17 08:02 /etc/alternatives/javah -> /usr/lib/jvm/java-6-oracle/bin/javah
lrwxrwxrwx 1 root root 46 ene 17 08:02 /etc/alternatives/javah.1.gz -> /usr/lib/jvm/java-6-oracle/man/man1/javah.1.gz
lrwxrwxrwx 1 root root 36 ene 17 08:02 /etc/alternatives/javap -> /usr/lib/jvm/java-6-oracle/bin/javap
lrwxrwxrwx 1 root root 46 ene 17 08:02 /etc/alternatives/javap.1.gz -> /usr/lib/jvm/java-6-oracle/man/man1/javap.1.gz
lrwxrwxrwx 1 root root 42 ene 17 08:02 /etc/alternatives/java_vm -> /usr/lib/jvm/java-6-oracle/jre/bin/java_vm
lrwxrwxrwx 1 root root 41 ene 17 08:02 /etc/alternatives/javaws -> /usr/lib/jvm/java-6-oracle/jre/bin/javaws
lrwxrwxrwx 1 root root 47 ene 17 08:02 /etc/alternatives/javaws.1.gz -> /usr/lib/jvm/java-6-oracle/man/man1/javaws.1.gz
lrwxrwxrwx 1 root root 34 ene 17 08:02 /etc/alternatives/jar -> /usr/lib/jvm/java-6-oracle/bin/jar
E) Configure your USB:
Code:
$ gksudo gedit /etc/udev/rules.d/51-android.rules
Inside of this blank text file insert:
Code:
#Acer
SUBSYSTEM=="usb", ATTR{idVendor}=="0502", MODE="0666"
#ASUS
SUBSYSTEM=="usb", ATTR{idVendor}=="0b05", MODE="0666"
#Dell
SUBSYSTEM=="usb", ATTR{idVendor}=="413c", MODE="0666"
#Foxconn
SUBSYSTEM=="usb", ATTR{idVendor}=="0489", MODE="0666"
#Garmin-Asus
SUBSYSTEM=="usb", ATTR{idVendor}=="091E", MODE="0666"
#Google
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666"
#HTC
SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666"
#Huawei
SUBSYSTEM=="usb", ATTR{idVendor}=="12d1", MODE="0666"
#K-Touch
SUBSYSTEM=="usb", ATTR{idVendor}=="24e3", MODE="0666"
#KT Tech
SUBSYSTEM=="usb", ATTR{idVendor}=="2116", MODE="0666"
#Kyocera
SUBSYSTEM=="usb", ATTR{idVendor}=="0482", MODE="0666"
#Lenevo
SUBSYSTEM=="usb", ATTR{idVendor}=="17EF", MODE="0666"
#LG
SUBSYSTEM=="usb", ATTR{idVendor}=="1004", MODE="0666"
#Motorola
SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", MODE="0666"
#NEC
SUBSYSTEM=="usb", ATTR{idVendor}=="0409", MODE="0666"
#Nook
SUBSYSTEM=="usb", ATTR{idVendor}=="2080", MODE="0666"
#Nvidia
SUBSYSTEM=="usb", ATTR{idVendor}=="0955", MODE="0666"
#OTGV
SUBSYSTEM=="usb", ATTR{idVendor}=="2257", MODE="0666"
#Pantech
SUBSYSTEM=="usb", ATTR{idVendor}=="10A9", MODE="0666"
#Philips
SUBSYSTEM=="usb", ATTR{idVendor}=="0471", MODE="0666"
#PMC-Sierra
SUBSYSTEM=="usb", ATTR{idVendor}=="04da", MODE="0666"
#Qualcomm
SUBSYSTEM=="usb", ATTR{idVendor}=="05c6", MODE="0666"
#SK Telesys
SUBSYSTEM=="usb", ATTR{idVendor}=="1f53", MODE="0666"
#Samsung
SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", MODE="0666"
#Sharp
SUBSYSTEM=="usb", ATTR{idVendor}=="04dd", MODE="0666"
#Sony Ericsson
SUBSYSTEM=="usb", ATTR{idVendor}=="0fce", MODE="0666"
#Toshiba
SUBSYSTEM=="usb", ATTR{idVendor}=="0930", MODE="0666"
#ZTE
SUBSYSTEM=="usb", ATTR{idVendor}=="19D2", MODE="0666"
Save the file and close it and then issue this command:
Code:
$ sudo chmod a+r /etc/udev/rules.d/51-android.rules
2º - Create the Directories
You will need to set up some directories in your build environment.
Note: For the next steps, I modified the installation path sources, because in this way you can include other repositories (CAF, AOSP, etc ...).
To create them:
Code:
mkdir -p ~/bin
mkdir -p ~/android
mkdir -p ~/android/cyanogenmod
mkdir -p ~/android/cyanogenmod/jellybean
3º - Install the repo:
Enter the following to download make executable the "repo" binary:
Code:
curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
Note:
You may need to reboot for these changes to take effect.
4º - Install the CM10 Repository:
Now enter the following to initialize the CyanogenMod repository:
Code:
cd ~/android/cyanogenmod/jellybean/
repo init -u git://github.com/CyanogenMod/android.git -b jellybean
repo sync -j16
5º - Obtain the presto device tree:
Create/Edit a file with the name roomservice.xml in the ".repo/local_manifests/" directory. To see this directory, you have to press Ctrl-H in your file manager.
Code:
mkdir -p ~/android/cyanogenmod/jellybean/.repo/local_manifests/
gedit ~/android/cyanogenmod/jellybean/.repo/local_manifests/roomservice.xml
Add these lines
Code:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="PantechDevTeam/android_device_pantech_presto" path="device/pantech/presto" remote="github" revision="jellybean" />
<project name="PantechDevTeam/android_device_pantech_qcom-common" path="device/pantech/qcom-common" remote="github" revision="jellybean" />
<project name="PantechDevTeam/android_device_pantech_msm8660-common" path="device/pantech/msm8660-common" remote="github" revision="jellybean" />
<project name="PantechDevTeam/android_kernel_pantech_p9070" path="kernel/pantech/p9070" remote="github" revision="jellybean" />
</manifest>
Synchronize the repositories:
Code:
cd ~/android/cyanogenmod/jellybean/
repo sync
6º - Copy proprietary files:
Option 1:
To compile pantech presto, connect the device to the computer and ensure that ADB is working properly.
Code:
cd ~/android/cyanogenmod/jellybean/device/pantech/presto
./extract-files.sh
Option 2:
You can also include the repository with the necessary files for complilación:
Code:
gedit ~/android/cyanogenmod/jellybean/.repo/local_manifests/roomservice.xml
Add this line
Code:
<project name="PantechDevTeam/android_vendor_pantech_presto" path="vendor/pantech/presto" remote="github" revision="jellybean" />
Synchronize the repositories:
Code:
cd ~/android/cyanogenmod/jellybean/
repo sync
7º - Download RomManager
Note:
This only needs to be done when an update to RomManager is released. If you are-up-to date, you may skip to Building CyanogenMod.
Download RomManager which is needed by the build:
Code:
~/android/cyanogenmod/jellybean/vendor/cm/get-prebuilts
8º - Building CyanogenMod
First, check for updates in the source:
Code:
cd ~/android/cyanogenmod/jellybean/
repo sync
Now, the environment must be configured to build and the ROM compiled.
Code:
. build/envsetup.sh && brunch presto
9º - Install
If you're a little crazy, and at your own risk, you can complete the installation:
Copy your .zip file from ~/android/cyanogenmod/jellybean/out/target/product/presto/cm-10-XXXXX-UNOFFICIAL-presto.zip to the root of the SD card.
Optional: Download Google Apps for CyanogenMod 10 and place it on the root of the SD card.
Flash both of these .zip files from recovery.
-----------------------------------------------------------------------------------------
Update:
In CyanogenMod, ~/.repo/local_manifest.xml file has been changed to ~/.repo/local_manifests/roomservice.xml
----------------------------------------------------------------------------------------------------------------
Greetings.
mifl said:
Hello kagedws6:
I'm trying to porting CM7.
Today I got the first complete compilation, but I am beginning not know if I've done well.
I wish I could share the work and the big developers who are in this forum will help us improve it.
if I can write a little later I followed the steps.
Sorry for my bad English.
Click to expand...
Click to collapse
feel free to post as much information as possible here! The more people we can get involved the better and it will help bring even more people in! We have to let XDA know the burst won't fade away and maybe someday we'll get our own section!
mifl said:
Hello kagedws6:
I'm trying to porting CM7.
Today I got the first complete compilation, but I am beginning not know if I've done well.
I wish I could share the work and the big developers who are in this forum will help us improve it.
if I can write a little later I followed the steps.
Sorry for my bad English.
Click to expand...
Click to collapse
Have you tried installing it on the Burst and if so, will it boot?
mifl said:
Hello kagedws6:
I'm trying to porting CM7.
Today I got the first complete compilation, but I am beginning not know if I've done well.
I wish I could share the work and the big developers who are in this forum will help us improve it.
if I can write a little later I followed the steps.
Sorry for my bad English.
Click to expand...
Click to collapse
If you would like to post any files and any progress you've gotten up for review and tweeking please do. You can upload with dropbox or something like that and post the links up
kagedws6 said:
If you would like to post any files and any progress you've gotten up for review and tweeking please do. You can upload with dropbox or something like that and post the links up
Click to expand...
Click to collapse
I'm making some free time this upcoming week to work on this. The first thing I would like to do is recompile recovery and implement touch support.
One that is done I'll upload the crude device tree to start the rest from.
Sent from my PantechP9070 using xda app-developers app
Compile AOSP Codeaurora for Pantech Burst P9070 (presto)
To compile AOSP Codeaurora for Pantech Burst P9070 (presto) - "REVISION I", following the next steps.
1º - Prepare the Build Environment:
This step is based on the following tutorial: [Tutorial] Compile JB on Ubuntu - Thanks dastin1015.
A) Install Python and Git:
Code:
$ sudo apt-get install python
Code:
$ sudo apt-get install git-core
B) Install Android SDK:
- Download the SDK here: http://developer.android.com/sdk/index.html
- Extract the SDK and place it in your home directory.
- I renamed my SDK to android-sdk to make it easier to navigate to.
- Go to your home folder, press Ctrl+H to show hidden files, and open up your .bashrc file.
- Add these lines at the bottom of the file:
Code:
# Android tools
export PATH=${PATH}:~/android-sdk/tools
export PATH=${PATH}:~/android-sdk/platform-tools
export PATH=${PATH}:~/bin
- Find your .profile file and add this at the bottom of the file:
Code:
PATH="$HOME/android-sdk/tools:$HOME/android-sdk/platform-tools:$PATH"
You have now successfully installed the Android SDK.
To check for updates issue this into your terminal:
Code:
$ android
C) Install required packages:
Building on Ubuntu 10.10/11.10:
Code:
$ sudo apt-get install git-core gnupg flex bison gperf build-essential \
zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs \
x11proto-core-dev libx11-dev lib32readline-gplv2-dev schedtool lib32z-dev \
libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown \
libxml2-utils
On Ubuntu 10.10:
Code:
$ sudo ln -s /usr/lib32/mesa/libGL.so.1 /usr/lib32/mesa/libGL.so
On Ubuntu 11.10:
Code:
$ sudo apt-get install libx11-dev:i386
On newer versions of Ubuntu such as 11.10 you may need to do the following:
Code:
$ sudo ln -s /usr/lib/i386-linux-gnu/libX11.so.6 /usr/lib/i386-linux-gnu/libX11.so
Building on Ubuntu 12.04/10:
Code:
$ sudo apt-get install git-core gnupg flex bison gperf build-essential \
zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \
libgl1-mesa-dev g++-multilib mingw32 openjdk-6-jdk tofrodos \
python-markdown libxml2-utils xsltproc zlib1g-dev:i386 \
pngcrush optipng
Code:
$ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
D) Install Oracle Java 6:
To install Oracle Java 6 in Ubuntu via PPA: http://www.webupd8.org/2012/11/oracle-sun-java-6-installer-available.html
Code:
$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update
$ sudo apt-get install oracle-java6-installer
After the installation, check the version of java, using the command:
Code:
$ java -version
Output console:
Code:
java version "1.6.0_38"
Java(TM) SE Runtime Environment (build 1.6.0_38-b05)
Java HotSpot(TM) 64-Bit Server VM (build 20.13-b02, mixed mode)
Note: The installed version of java, may have been updated, but should be kept in version 1.6.XX
Verify the symlinks:
Code:
$ ls -la /etc/alternatives/java* && ls -la /etc/alternatives/jar
Output console:
Code:
lrwxrwxrwx 1 root root 39 ene 17 08:02 /etc/alternatives/java -> /usr/lib/jvm/java-6-oracle/jre/bin/java
lrwxrwxrwx 1 root root 45 ene 17 08:02 /etc/alternatives/java.1.gz -> /usr/lib/jvm/java-6-oracle/man/man1/java.1.gz
lrwxrwxrwx 1 root root 36 ene 17 08:02 /etc/alternatives/javac -> /usr/lib/jvm/java-6-oracle/bin/javac
lrwxrwxrwx 1 root root 46 ene 17 08:02 /etc/alternatives/javac.1.gz -> /usr/lib/jvm/java-6-oracle/man/man1/javac.1.gz
lrwxrwxrwx 1 root root 38 ene 17 08:02 /etc/alternatives/javadoc -> /usr/lib/jvm/java-6-oracle/bin/javadoc
lrwxrwxrwx 1 root root 48 ene 17 08:02 /etc/alternatives/javadoc.1.gz -> /usr/lib/jvm/java-6-oracle/man/man1/javadoc.1.gz
lrwxrwxrwx 1 root root 36 ene 17 08:02 /etc/alternatives/javah -> /usr/lib/jvm/java-6-oracle/bin/javah
lrwxrwxrwx 1 root root 46 ene 17 08:02 /etc/alternatives/javah.1.gz -> /usr/lib/jvm/java-6-oracle/man/man1/javah.1.gz
lrwxrwxrwx 1 root root 36 ene 17 08:02 /etc/alternatives/javap -> /usr/lib/jvm/java-6-oracle/bin/javap
lrwxrwxrwx 1 root root 46 ene 17 08:02 /etc/alternatives/javap.1.gz -> /usr/lib/jvm/java-6-oracle/man/man1/javap.1.gz
lrwxrwxrwx 1 root root 42 ene 17 08:02 /etc/alternatives/java_vm -> /usr/lib/jvm/java-6-oracle/jre/bin/java_vm
lrwxrwxrwx 1 root root 41 ene 17 08:02 /etc/alternatives/javaws -> /usr/lib/jvm/java-6-oracle/jre/bin/javaws
lrwxrwxrwx 1 root root 47 ene 17 08:02 /etc/alternatives/javaws.1.gz -> /usr/lib/jvm/java-6-oracle/man/man1/javaws.1.gz
lrwxrwxrwx 1 root root 34 ene 17 08:02 /etc/alternatives/jar -> /usr/lib/jvm/java-6-oracle/bin/jar
E) Configure your USB:
Code:
$ gksudo gedit /etc/udev/rules.d/51-android.rules
Inside of this blank text file insert:
Code:
#Acer
SUBSYSTEM=="usb", ATTR{idVendor}=="0502", MODE="0666"
#ASUS
SUBSYSTEM=="usb", ATTR{idVendor}=="0b05", MODE="0666"
#Dell
SUBSYSTEM=="usb", ATTR{idVendor}=="413c", MODE="0666"
#Foxconn
SUBSYSTEM=="usb", ATTR{idVendor}=="0489", MODE="0666"
#Garmin-Asus
SUBSYSTEM=="usb", ATTR{idVendor}=="091E", MODE="0666"
#Google
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666"
#HTC
SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666"
#Huawei
SUBSYSTEM=="usb", ATTR{idVendor}=="12d1", MODE="0666"
#K-Touch
SUBSYSTEM=="usb", ATTR{idVendor}=="24e3", MODE="0666"
#KT Tech
SUBSYSTEM=="usb", ATTR{idVendor}=="2116", MODE="0666"
#Kyocera
SUBSYSTEM=="usb", ATTR{idVendor}=="0482", MODE="0666"
#Lenevo
SUBSYSTEM=="usb", ATTR{idVendor}=="17EF", MODE="0666"
#LG
SUBSYSTEM=="usb", ATTR{idVendor}=="1004", MODE="0666"
#Motorola
SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", MODE="0666"
#NEC
SUBSYSTEM=="usb", ATTR{idVendor}=="0409", MODE="0666"
#Nook
SUBSYSTEM=="usb", ATTR{idVendor}=="2080", MODE="0666"
#Nvidia
SUBSYSTEM=="usb", ATTR{idVendor}=="0955", MODE="0666"
#OTGV
SUBSYSTEM=="usb", ATTR{idVendor}=="2257", MODE="0666"
#Pantech
SUBSYSTEM=="usb", ATTR{idVendor}=="10A9", MODE="0666"
#Philips
SUBSYSTEM=="usb", ATTR{idVendor}=="0471", MODE="0666"
#PMC-Sierra
SUBSYSTEM=="usb", ATTR{idVendor}=="04da", MODE="0666"
#Qualcomm
SUBSYSTEM=="usb", ATTR{idVendor}=="05c6", MODE="0666"
#SK Telesys
SUBSYSTEM=="usb", ATTR{idVendor}=="1f53", MODE="0666"
#Samsung
SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", MODE="0666"
#Sharp
SUBSYSTEM=="usb", ATTR{idVendor}=="04dd", MODE="0666"
#Sony Ericsson
SUBSYSTEM=="usb", ATTR{idVendor}=="0fce", MODE="0666"
#Toshiba
SUBSYSTEM=="usb", ATTR{idVendor}=="0930", MODE="0666"
#ZTE
SUBSYSTEM=="usb", ATTR{idVendor}=="19D2", MODE="0666"
Save the file and close it and then issue this command:
Code:
$ sudo chmod a+r /etc/udev/rules.d/51-android.rules
2º - Create the Directories
You will need to set up some directories in your build environment.
To create them:
Code:
$ mkdir -p ~/bin
$ mkdir -p ~/android
$ mkdir -p ~/android/codeaurora
$ mkdir -p ~/android/codeaurora/ics
Note:
For this step, I modified the installation path sources, because in this way you can include other repositories (CyanogenMod, AOSP, etc ...).
3º - Install the repo:
Enter the following to download make executable the "repo" binary:
Code:
curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
Note:
You may need to reboot for these changes to take effect.
4º - Install the Codeaurora ICS Repository:
Now enter the following to initialize the Codeaurora repository:
Code:
cd ~/android/codeaurora/ics/
$ repo init -u git://codeaurora.org/platform/manifest.git -b ics
$ repo sync -j16
Note:
Remember that the repository, usually requests a username and password.
5º - Obtain proprietary kernel:
Create a file with the name local_manifest.xml in the ".repo" directory. To see this directory, you have to press Ctrl-H in your file manager.
Code:
$ gedit ~/android/codeaurora/ics/.repo/local_manifest.xml.
Add these lines
Code:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remote name="aosp" fetch="https://android.googlesource.com/"/>
<remote name="github" fetch="https://github.com/"/>
<!-- Kernel Pantech presto -->
<remove-project name="kernel/msm"/>
<project name="mifl/android_kernel_pantech_p9070" path="kernel" remote="github" revision="master"/>
</manifest>
Note:
The third and fourth lines, allows you to add repositories: Github and AOSP.
The sixth and seventh lines, if all goes well, delete the repository kernel, and replace it with the official Pantech kernel.
6º - Copy proprietary files:
Unzip the file "vendor-blobs-rev2.zip" attached to the end of the post. In the root: device/qcom/msm8660_surf
To extract proprietary files, connect the device to the computer and ensure that ADB is working properly.
Code:
$ cd ~/android/codeaurora/ics/device/qcom/msm8660_surf
$ ./extract-files.sh
Note:
The file "proprietary-files.txt" can fail depending on the version of Android, you have installed on your device.You should add to the list, You should add to the list the files that are necessary for compilation.
7º - Necessary changes:
These are needed to include the files created in the previous step.
Add these lines, if not already included, to the end of the file: "device/qcom/msm8660_surf/msm8660_surf.mk":
Code:
#============================================
# Also get non-open-source specific aspects if available
$(call inherit-product, vendor/qcom/proprietary/common/msm8660_surf/device-vendor.mk)
Add these lines, if not already included, to the end of the file: "device/qcom/msm8660_surf/BoardConfig.mk":
Code:
#============================================
# Also get non-open-source specific aspects if available
-include vendor/qcom/proprietary/common/msm8660_surf/BoardConfigVendor.mk
Note:
Check each time you synchronize the repository, the lines are on your site.
In these two files, you can include your own code, for example (BT, WI-FI, etc ...).
Part of what is necessary, changing the routes vendor directory, you can find it here: https://github.com/mifl/android_device_pantech_presto.
Working method:
Changes for BoardConfig.mk files, you must make in the file "vendor/qcom/proprietary/common/msm8660_surf/board-presto.mk".
Changes for device.mk files, you must make in the file "vendor/qcom/proprietary/common/msm8660_surf/device-presto.mk".
These two files are created by the script ". / Extract-files.sh". If the files exist, when you run the script again, does not modify the changes you in them before.
Example:
Copy from here: https://github.com/mifl/android_device_pantech_presto/blob/jellybean/BoardConfig.mk:
Code:
# Headers path
TARGET_SPECIFIC_HEADER_PATH: = device/pantech/presto/include
In "vendor/qcom/proprietary/common/msm8660_surf/board-presto.mk", paste and replace the route. It should look like this:
Code:
# Headers path
TARGET_SPECIFIC_HEADER_PATH: = vendor/qcom/proprietary/common/msm8660_surf/include
Now copy the files in the folder /include. To download the entire repository: https://github.com/mifl/android_device_pantech_presto/archive/jellybean.zip
8º - Building ROM
First, check for updates in the source:
Code:
$ cd ~/android/codeaurora/ics/
$ repo sync
Now, the environment must be configured to build and the ROM compiled.
Code:
$ source build/envsetup.sh
$ lunch msm8660_surf-userdebug
$ make -j4 KERNEL_DEFCONFIG=msm8660-perf-PRESTO_TP20_defconfig
9º - Install
If you're a little crazy, and at your own risk, you can complete the installation:
Copy your .zip file from ~/android/codeaurora/ics/out/target/product/msm8660_surf/msm8660_surf-ota-XXX.zip to the root of the SD card.
Flash both of these .zip files from recovery.
Note:
This last step is unconfirmed, google search for how to.
-----------------------------------------------------------------------------------------
Final note
This guide is part of a project I started some time ago. If you find errors, make every effort to solve them by yourself.
To find more information visit:
https://www.codeaurora.org/gitweb/quic/la/.
https://www.codeaurora.org/xwiki/bin/QAEP/.
Greetings.
P.D.:
Specially dedicated to our friend "mrakattack". I hope this guide will be useful.
mifl said:
Hi
In the new project "Cyanogen-presto" on Google Project Hosting, can download the files, used by me to compile CM7.
The download link is: CM presto_device
I hope to update the project, but my job don´t leaves me time.
Join to the project, together we can do a good job
A greeting.
Click to expand...
Click to collapse
I want to thank you so much for taking the steps needed to get this started and to anyone else reading this that has been helping. I have made a few attempts by myself but with as little as I know I haven't gotten them to install threw cwm which is probably a good thing as I may have bricked my phone if I had been sucessful. Hopefully with this we will be able to progress and also get noticed in the process.
kagedws6 said:
I want to thank you so much for taking the steps needed to get this started and to anyone else reading this that has been helping. I have made a few attempts by myself but with as little as I know I haven't gotten them to install threw cwm which is probably a good thing as I may have bricked my phone if I had been sucessful. Hopefully with this we will be able to progress and also get noticed in the process.
Click to expand...
Click to collapse
Couldn't agree more! Thank you mifl! It would seem you've put a lot of work into this, thank you.
Sent from my PantechP9070 using xda app-developers app
stevotdo said:
Couldn't agree more! Thank you mifl! It would seem you've put a lot of work into this, thank you.
Sent from my PantechP9070 using xda app-developers app
Click to expand...
Click to collapse
ty too stevotdo! for all the work you've done to date and also that you've already given urself to do in the future!
stevotdo said:
Couldn't agree more! Thank you mifl! It would seem you've put a lot of work into this, thank you.
Click to expand...
Click to collapse
kagedws6 said:
I want to thank you so much for taking the steps needed to get this started and to anyone else reading this that has been helping. I have made a few attempts by myself but with as little as I know I haven't gotten them to install threw cwm which is probably a good thing as I may have bricked my phone if I had been sucessful. Hopefully with this we will be able to progress and also get noticed in the process.
Click to expand...
Click to collapse
Thanks guys.
I will try continue working: a guide on how to be compiled and advance in the compatibility of the ROM.
But I have to learn to handle the tools of Google Project Hosting, to include sources files, and use the Wiki for tutorials.
Not answer many post, because the lack of English makes me take long to answer them.
If possible I would like people to collaborate on the project. Providing corrections, suggestions and modifications to the code of the ROM.
A greeting.
mifl said:
Thanks guys.
I will try continue working: a guide on how to be compiled and advance in the compatibility of the ROM.
But I have to learn to handle the tools of Google Project Hosting, to include sources files, and use the Wiki for tutorials.
Not answer many post, because the lack of English makes me take long to answer them.
If possible I would like people to collaborate on the project. Providing corrections, suggestions and modifications to the code of the ROM.
A greeting.
Click to expand...
Click to collapse
Need to change the prebuilts and the fstabs. the partition information is wrong in the prebuilts and in the emmc fstab
davepmer said:
Need to change the prebuilts and the fstabs. the partition information is wrong in the prebuilts and in the emmc fstab
Click to expand...
Click to collapse
well I changed the prebuilts and all the partition info I could find. it compiles fine, but will not even bring up adb. not really sure what is wrong.
here are the device files I tried to fix. http://www.4shared.com/zip/0obdiB7y/presto_device_fixed.html?refurl=d1url
fyi I did not flash the boot.img, not brave enough
davepmer said:
well I changed the prebuilts and all the partition info I could find. it compiles fine, but will not even bring up adb. not really sure what is wrong.
here are the device files I tried to fix. http://www.4shared.com/zip/0obdiB7y/presto_device_fixed.html?refurl=d1url
fyi I did not flash the boot.img, not brave enough
Click to expand...
Click to collapse
added your files to the googlecode site
davepmer said:
well I changed the prebuilts and all the partition info I could find. it compiles fine, but will not even bring up adb. not really sure what is wrong.
here are the device files I tried to fix. http://www.4shared.com/zip/0obdiB7y/presto_device_fixed.html?refurl=d1url
fyi I did not flash the boot.img, not brave enough
Click to expand...
Click to collapse
Believe that you need a valid cm7 ramdisk in the boot.img for it to start loading. If you aren't sure about the precompiled kernel you could always split the boot.img and insert your own.
Better yet you could reboot to fastboot and "fastboot boot boot.img" with the cm7 boot.img and on the next boot it will revert to the original boot.img
Sent from my PantechP9070 using xda app-developers app
Hi
The first thank all the work they are doing.
As I said previously my work would begin development of the ROM, and so we could all collaborate.
To add further modifications as soon as possible to the project file and not saturate, they appreciate it used a standard format.
Example:
In the file "recovery.fstab" in the root directory: mmcblk0p14 is data (it has 13)
Change:
Code:
/data ext4 /dev/block/mmcblk0p13
By the following:
Code:
/data ext4 /dev/block/mmcblk0p14
Following this format, the members of the project: "kagedws6", like myself, or anyone who wants to join the project, we add the change as soon as possible.
Thank you all again.
A greeting.
stevotdo said:
Believe that you need a valid cm7 ramdisk in the boot.img for it to start loading. If you aren't sure about the precompiled kernel you could always split the boot.img and insert your own.
Better yet you could reboot to fastboot and "fastboot boot boot.img" with the cm7 boot.img and on the next boot it will revert to the original boot.img
Sent from my PantechP9070 using xda app-developers app
Click to expand...
Click to collapse
when I try to fastboot boot.boot.img I get an image incomplete error. also the size of my boot.img is wrong, it is way too small. My compiled boot.img is 4.6 megs in size. the boot.img from my cwm recovery backup is 10.5 megs. I am missing something in the compiled kernel.
davepmer said:
when I try to fastboot boot.boot.img I get an image incomplete error. also the size of my boot.img is wrong, it is way too small. My compiled boot.img is 4.6 megs in size. the boot.img from my cwm recovery backup is 10.5 megs. I am missing something in the compiled kernel.
Click to expand...
Click to collapse
I ran into that a couple months ago. I still have no idea how to remedy that. I just got done compiling so maybe I can try to figure out what's going on.
I know that the zimage is 4.5 meg (same as when you split the stock boot.img) so I'm wandering what the secret sauce here is we are missing
Edit: I also think it would be worth tearing down the prestoroot.img also. What ever the secret sauce is, it has to be in there too. Since it is the only modified boot.img that we know of that has booted on this thing.
Sent from my PantechP9070 using xda app-developers app
stevotdo said:
I ran into that a couple months ago. I still have no idea how to remedy that. I just got done compiling so maybe I can try to figure out what's going on.
I know that the zimage is 4.5 meg (same as when you split the stock boot.img) so I'm wandering what the secret sauce here is we are missing
Edit: I also think it would be worth tearing down the prestoroot.img also. What ever the secret sauce is, it has to be in there too. Since it is the only modified boot.img that we know of that has booted on this thing.
Sent from my PantechP9070 using xda app-developers app
Click to expand...
Click to collapse
is the ramdisk.gz missing? from what I understand both the zImage and the ramdisk have to be bundled in the boot.img.
*DEV TOOLS* - Pack & Repack Boot.img Files - for Windows USERS shows how to pull it apart and repack it in windows. I'm just going threw the excruciating long download of cygwin

[DEV] - Compile Unofficial CM10 for Pantech Flex

To compile Unofficial CyanogenMod for Pantech Flex P8010 (oscar), following the next steps.
1º - Prepare the Build Environment:
This step is based on the following tutorial: [Tutorial] Compile JB on Ubuntu - Thanks dastin1015.
A) Install Python and Git:
Code:
$ sudo apt-get install python
Code:
$ sudo apt-get install git-core
B) Install Android SDK:
- Download the SDK here: http://developer.android.com/sdk/index.html
- Extract the SDK and place it in your home directory.
- I renamed my SDK to android-sdk to make it easier to navigate to.
- Go to your home folder, press Ctrl+H to show hidden files, and open up your .bashrc file.
- Add these lines at the bottom of the file:
Code:
# Android tools
export PATH=${PATH}:~/android-sdk/tools
export PATH=${PATH}:~/android-sdk/platform-tools
export PATH=${PATH}:~/bin
- Find your .profile file and add this at the bottom of the file:
Code:
PATH="$HOME/android-sdk/tools:$HOME/android-sdk/platform-tools:$PATH"
You have now successfully installed the Android SDK.
To check for updates issue this into your terminal:
Code:
$ android
C) Install required packages:
Building on Ubuntu 10.10/11.10:
Code:
$ sudo apt-get install git-core gnupg flex bison gperf build-essential \
zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs \
x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev \
libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown \
libxml2-utils xsltproc
On Ubuntu 10.10:
Code:
$ sudo ln -s /usr/lib32/mesa/libGL.so.1 /usr/lib32/mesa/libGL.so
On Ubuntu 11.10:
Code:
$ sudo apt-get install libx11-dev:i386
On newer versions of Ubuntu such as 11.10 you may need to do the following:
Code:
$ sudo ln -s /usr/lib/i386-linux-gnu/libX11.so.6 /usr/lib/i386-linux-gnu/libX11.so
Building on Ubuntu 12.04/10:
Code:
$ sudo apt-get install git-core gnupg flex bison gperf build-essential \
zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \
libgl1-mesa-dev g++-multilib mingw32 openjdk-6-jdk tofrodos \
python-markdown libxml2-utils xsltproc zlib1g-dev:i386 \
pngcrush optipng
Code:
$ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
D) Install Oracle Java 6:
To install Oracle Java 6 in Ubuntu via PPA: http://www.webupd8.org/2012/11/oracle-sun-java-6-installer-available.html
Code:
$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update
$ sudo apt-get install oracle-java6-installer
After the installation, check the version of java, using the command:
Code:
$ java -version
Output console:
Code:
java version "1.6.0_38"
Java(TM) SE Runtime Environment (build 1.6.0_38-b05)
Java HotSpot(TM) 64-Bit Server VM (build 20.13-b02, mixed mode)
Note: The installed version of java, may have been updated, but should be kept in version 1.6.XX
Verify the symlinks:
Code:
$ ls -la /etc/alternatives/java* && ls -la /etc/alternatives/jar
Output console:
Code:
lrwxrwxrwx 1 root root 39 ene 17 08:02 /etc/alternatives/java -> /usr/lib/jvm/java-6-oracle/jre/bin/java
lrwxrwxrwx 1 root root 45 ene 17 08:02 /etc/alternatives/java.1.gz -> /usr/lib/jvm/java-6-oracle/man/man1/java.1.gz
lrwxrwxrwx 1 root root 36 ene 17 08:02 /etc/alternatives/javac -> /usr/lib/jvm/java-6-oracle/bin/javac
lrwxrwxrwx 1 root root 46 ene 17 08:02 /etc/alternatives/javac.1.gz -> /usr/lib/jvm/java-6-oracle/man/man1/javac.1.gz
lrwxrwxrwx 1 root root 38 ene 17 08:02 /etc/alternatives/javadoc -> /usr/lib/jvm/java-6-oracle/bin/javadoc
lrwxrwxrwx 1 root root 48 ene 17 08:02 /etc/alternatives/javadoc.1.gz -> /usr/lib/jvm/java-6-oracle/man/man1/javadoc.1.gz
lrwxrwxrwx 1 root root 36 ene 17 08:02 /etc/alternatives/javah -> /usr/lib/jvm/java-6-oracle/bin/javah
lrwxrwxrwx 1 root root 46 ene 17 08:02 /etc/alternatives/javah.1.gz -> /usr/lib/jvm/java-6-oracle/man/man1/javah.1.gz
lrwxrwxrwx 1 root root 36 ene 17 08:02 /etc/alternatives/javap -> /usr/lib/jvm/java-6-oracle/bin/javap
lrwxrwxrwx 1 root root 46 ene 17 08:02 /etc/alternatives/javap.1.gz -> /usr/lib/jvm/java-6-oracle/man/man1/javap.1.gz
lrwxrwxrwx 1 root root 42 ene 17 08:02 /etc/alternatives/java_vm -> /usr/lib/jvm/java-6-oracle/jre/bin/java_vm
lrwxrwxrwx 1 root root 41 ene 17 08:02 /etc/alternatives/javaws -> /usr/lib/jvm/java-6-oracle/jre/bin/javaws
lrwxrwxrwx 1 root root 47 ene 17 08:02 /etc/alternatives/javaws.1.gz -> /usr/lib/jvm/java-6-oracle/man/man1/javaws.1.gz
lrwxrwxrwx 1 root root 34 ene 17 08:02 /etc/alternatives/jar -> /usr/lib/jvm/java-6-oracle/bin/jar
E) Configure your USB:
Code:
$ gksudo gedit /etc/udev/rules.d/51-android.rules
Inside of this blank text file insert:
Code:
#Acer
SUBSYSTEM=="usb", ATTR{idVendor}=="0502", MODE="0666"
#ASUS
SUBSYSTEM=="usb", ATTR{idVendor}=="0b05", MODE="0666"
#Dell
SUBSYSTEM=="usb", ATTR{idVendor}=="413c", MODE="0666"
#Foxconn
SUBSYSTEM=="usb", ATTR{idVendor}=="0489", MODE="0666"
#Garmin-Asus
SUBSYSTEM=="usb", ATTR{idVendor}=="091E", MODE="0666"
#Google
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666"
#HTC
SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666"
#Huawei
SUBSYSTEM=="usb", ATTR{idVendor}=="12d1", MODE="0666"
#K-Touch
SUBSYSTEM=="usb", ATTR{idVendor}=="24e3", MODE="0666"
#KT Tech
SUBSYSTEM=="usb", ATTR{idVendor}=="2116", MODE="0666"
#Kyocera
SUBSYSTEM=="usb", ATTR{idVendor}=="0482", MODE="0666"
#Lenevo
SUBSYSTEM=="usb", ATTR{idVendor}=="17EF", MODE="0666"
#LG
SUBSYSTEM=="usb", ATTR{idVendor}=="1004", MODE="0666"
#Motorola
SUBSYSTEM=="usb", ATTR{idVendor}=="22b8", MODE="0666"
#NEC
SUBSYSTEM=="usb", ATTR{idVendor}=="0409", MODE="0666"
#Nook
SUBSYSTEM=="usb", ATTR{idVendor}=="2080", MODE="0666"
#Nvidia
SUBSYSTEM=="usb", ATTR{idVendor}=="0955", MODE="0666"
#OTGV
SUBSYSTEM=="usb", ATTR{idVendor}=="2257", MODE="0666"
#Pantech
SUBSYSTEM=="usb", ATTR{idVendor}=="10A9", MODE="0666"
#Philips
SUBSYSTEM=="usb", ATTR{idVendor}=="0471", MODE="0666"
#PMC-Sierra
SUBSYSTEM=="usb", ATTR{idVendor}=="04da", MODE="0666"
#Qualcomm
SUBSYSTEM=="usb", ATTR{idVendor}=="05c6", MODE="0666"
#SK Telesys
SUBSYSTEM=="usb", ATTR{idVendor}=="1f53", MODE="0666"
#Samsung
SUBSYSTEM=="usb", ATTR{idVendor}=="04e8", MODE="0666"
#Sharp
SUBSYSTEM=="usb", ATTR{idVendor}=="04dd", MODE="0666"
#Sony Ericsson
SUBSYSTEM=="usb", ATTR{idVendor}=="0fce", MODE="0666"
#Toshiba
SUBSYSTEM=="usb", ATTR{idVendor}=="0930", MODE="0666"
#ZTE
SUBSYSTEM=="usb", ATTR{idVendor}=="19D2", MODE="0666"
Save the file and close it and then issue this command:
Code:
$ sudo chmod a+r /etc/udev/rules.d/51-android.rules
2º - Create the Directories
You will need to set up some directories in your build environment.
Note: For the next steps, I modified the installation path sources, because in this way you can include other repositories (CAF, AOSP, etc ...).
To create them:
Code:
mkdir -p ~/bin
mkdir -p ~/android
mkdir -p ~/android/cyanogenmod
mkdir -p ~/android/cyanogenmod/jellybean
3º - Install the repo:
Enter the following to download make executable the "repo" binary:
Code:
curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
Note: You may need to reboot for these changes to take effect.
4º - Install the CM10 Repository:
Now enter the following to initialize the CyanogenMod repository:
Code:
cd ~/android/cyanogenmod/jellybean/
repo init -u git://github.com/CyanogenMod/android.git -b jellybean
repo sync -j16
5º - Obtain the oscar device tree:
Create/Edit a file with the name roomservice.xml in the ".repo/local_manifests/" directory. To see this directory, you have to press Ctrl-H in your file manager.
Code:
mkdir -p ~/android/cyanogenmod/jellybean/.repo/local_manifests/
gedit ~/android/cyanogenmod/jellybean/.repo/local_manifests/roomservice.xml
Add these lines:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="mifl/android_device_pantech_oscar" path="device/pantech/oscar" remote="github" revision="jellybean" />
<project name="mifl/android_device_pantech_qcom-common" path="device/pantech/qcom-common" remote="github" revision="jellybean" />
<project name="mifl/android_device_pantech_msm8960-common" path="device/pantech/msm8960-common" remote="github" revision="jellybean" />
<project name="mifl/android_kernel_pantech_p8010" path="kernel/pantech/p8010" remote="github" revision="jellybean" />
</manifest>
Synchronize the repositories:
Code:
cd ~/android/cyanogenmod/jellybean/
repo sync
6º - Copy proprietary files:
Option 1:
To compile Pantech oscar, connect the device to the computer and ensure that ADB is working properly.
Code:
cd ~/android/cyanogenmod/jellybean/device/pantech/oscar
./extract-files.sh
Option 2:
You can also include the repository with the necessary files for compilation:
Code:
gedit ~/android/cyanogenmod/jellybean/.repo/local_manifests/roomservice.xml
Add this line:
Code:
<project name="mifl/android_vendor_pantech_oscar" path="vendor/pantech/oscar" remote="github" revision="jellybean" />
Synchronize the repositories:
Code:
cd ~/android/cyanogenmod/jellybean/
repo sync
7º - Download RomManager:
Note: This only needs to be done when an update to RomManager is released. If you are-up-to date, you may skip to Building CyanogenMod.
Download RomManager which is needed by the build:
Code:
cd ~/android/cyanogenmod/jellybean
./vendor/cm/get-prebuilts
8º - Building CyanogenMod:
First, check for updates in the source:
Code:
cd ~/android/cyanogenmod/jellybean/
repo sync
Now, the environment must be configured to build and the ROM compiled.
Code:
. build/envsetup.sh && brunch oscar
9º - Compiled files:
Files generated in the compilation are in the /out directory, the build file is:
~/android/cyanogenmod/jellybean/out/target/product/oscar/cm-10-XXXXX-UNOFFICIAL-oscar.zip
-------------------------------
I hope that more users try to compile the ROM, and report bugs they find. Any help is greatly appreciated.
Greetings.
**Reserved for future updates**
**Reserved for future updates**
**Reserved for future updates**
I followed your instructions to the lleter, and this is what i get.
build/core/product_config.mk:189: *** _nic.PRODUCTS.[[device/*/oscar/cm.mk]]: "device/*/oscar/cm.mk" does not exist.
Device oscar not found. Attempting to retrieve device repository from CyanogenMod Github (http://github.com/Cyanogen
Repository for oscar not found in the CyanogenMod Github repository list. If this is in error, you may need to manuato your local_manifests/roomservice.xml.
build/core/product_config.mk:189: *** _nic.PRODUCTS.[[device/*/oscar/cm.mk]]: "device/*/oscar/cm.mk" does not exist.
** Don't have a product spec for: 'cm_oscar'
** Do you have the right repo manifest?
superbart007 said:
I followed your instructions to the lleter, and this is what i get.
build/core/product_config.mk:189: *** _nic.PRODUCTS.[[device/*/oscar/cm.mk]]: "device/*/oscar/cm.mk" does not exist.
Device oscar not found. Attempting to retrieve device repository from CyanogenMod Github (http://github.com/Cyanogen
Repository for oscar not found in the CyanogenMod Github repository list. If this is in error, you may need to manuato your local_manifests/roomservice.xml.
build/core/product_config.mk:189: *** _nic.PRODUCTS.[[device/*/oscar/cm.mk]]: "device/*/oscar/cm.mk" does not exist.
** Don't have a product spec for: 'cm_oscar'
** Do you have the right repo manifest?
Click to expand...
Click to collapse
Sorry:
There is an error in the wording of post. The kernel repository was wrong, must be changed p9070 for P8010.
Code:
<project name="mifl/android_kernel_pantech_p8010" path="kernel/pantech/p8010" remote="github" revision="jellybean" />
The rest of the repositories are well, and have been updated today and compiled fine.
----------------------------------------------------------------------------------------------------------------
Update:
In CyanogenMod Source, ~/.repo/local_manifest.xml file has been changed to ~/.repo/local_manifests/roomservice.xml
To adapt to change into the your "~/.repo" dir, must create the dir "local_manifests", rename the file local_manifest.xml to roomservice.xml, and move it into the new dir.
----------------------------------------------------------------------------------------------------------------
Greetings.
Ok tried our again still no joy. But also your instructions never mention how the dir pantech, and oscar are made, and when i goto build it say it can't find the mk file in the /devices/pantech/oscar.
Sent from my PantechP8010 using xda app-developers app
superbart007 said:
Ok tried our again still no joy. But also your instructions never mention how the dir pantech, and oscar are made, and when i goto build it say it can't find the mk file in the /devices/pantech/oscar.
Sent from my PantechP8010 using xda app-developers app
Click to expand...
Click to collapse
Projects in the file roomservice.xml have this structure:
Code:
<project name="mifl/android_device_pantech_oscar" path="device/pantech/oscar" remote="github" revision="jellybean" />
Each of the fields is:
name: name of the repository.
path: directory where the files are placed.
remote: git server
Revision: version (branch) to synchronize.
Each time you add a line to your roomservice.xml, you must synchronize the repositories:
Code:
cd ~/android/cyanogenmod/jellybean/
repo sync
Greetings.
Ok thank you, I'm new at doing this, and I'm trying to learn.
Sent from my PantechP8010 using xda app-developers app
Berry does this compile include gapps pu or do i need to use a jb one from goo.im
Sent from my PantechP8010 using xda app-developers app
superbart007 said:
Berry does this compile include gapps pu or do i need to use a jb one from goo.im
Sent from my PantechP8010 using xda app-developers app
Click to expand...
Click to collapse
You have to download Google Apps and flash from CWM Recovery.
Greetings.
Ok cool thanks
Sent from my PantechP8010 using xda app-developers app
Refactor to use repo msm8960-common
Changes in the repositories structure:
The repositories are needed:
Code:
android_device_pantech_oscar
| - android_device_pantech_qcom-common
| - android_device_pantech_msm8960-common
| - android_kernel_pantech_p8010
| - android_vendor_pantech_oscar
To complete this refactoring, you need to add a repository to your file: ~/.repo/local_manifests/roomservice.xml:
Code:
<project name="mifl/android_device_pantech_msm8960-common" path="device/pantech/msm8960-common" remote="github" revision="jellybean" />
And synchronize:
Code:
repo sync
Greetings.
mifl said:
Changes in the repositories structure:
The repositories are needed:
Code:
android_device_pantech_oscar
| - android_device_pantech_qcom-common
| - android_device_pantech_msm8960-common
| - android_kernel_pantech_p8010
| - android_vendor_pantech_oscar
To complete this refactoring, you need to add a repository to your file: ~/.repo/local_manifest/roomservice.xml:
Code:
<project name="mifl/android_device_pantech_msm8960-common" path="device/pantech/msm8960-common" remote="github" revision="jellybean" />
And synchronize:
Code:
repo sync
Greetings.
Click to expand...
Click to collapse
im getting this error message on step 8
Device oscar not found. Attempting to retrieve device repository from CyanogenMod Github (http://github.com/CyanogenMod).
Repository for oscar not found in the CyanogenMod Github repository list. If this is in error, you may need to manually add it to your local_manifests/roomservice.xml.
build/core/product_config.mk:189: *** _nic.PRODUCTS.[[device/*/oscar/cm.mk]]: "device/*/oscar/cm.mk" does not exist. Stop.
** Don't have a product spec for: 'cm_oscar'
** Do you have the right repo manifest?
No such item in brunch menu. Try 'breakfast'
Please help
atadres said:
im getting this error message on step 8
Device oscar not found. Attempting to retrieve device repository from CyanogenMod Github (http://github.com/CyanogenMod).
Repository for oscar not found in the CyanogenMod Github repository list. If this is in error, you may need to manually add it to your local_manifests/roomservice.xml.
build/core/product_config.mk:189: *** _nic.PRODUCTS.[[device/*/oscar/cm.mk]]: "device/*/oscar/cm.mk" does not exist. Stop.
** Don't have a product spec for: 'cm_oscar'
** Do you have the right repo manifest?
No such item in brunch menu. Try 'breakfast'
Please help
Click to expand...
Click to collapse
Can you write the contents of your file: ~/.repo/local_manifest/roomservice.xml
Greetings.
mifl said:
Can you write the contents of your file: ~/.repo/local_manifest/roomservice.xml
Greetings.
Click to expand...
Click to collapse
sure heres what it says
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="mifl/android_device_pantech_oscar" path="device/pantech/oscar" remote="github" revision="jellybean" />
<project name="mifl/android_device_pantech_msm8960-common" path="device/pantech/msm8960-common" remote="github" revision="jellybean" />
<project name="mifl/android_device_pantech_qcom-common" path="device/pantech/qcom-common" remote="github" revision="jellybean" />
<project name="mifl/android_kernel_pantech_p8010" path="kernel/pantech/p8010" remote="github" revision="jellybean" />
</manifest>
atadres said:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="mifl/android_device_pantech_oscar" path="device/pantech/oscar" remote="github" revision="jellybean" />
<project name="mifl/android_device_pantech_msm8960-common" path="device/pantech/msm8960-common" remote="github" revision="jellybean" />
<project name="mifl/android_device_pantech_qcom-common" path="device/pantech/qcom-common" remote="github" revision="jellybean" />
<project name="mifl/android_kernel_pantech_p8010" path="kernel/pantech/p8010" remote="github" revision="jellybean" />
</manifest>
Click to expand...
Click to collapse
The file seems fine.
To ensure:
Code:
cp ~/android/cyanogenmod/jellybean/.repo/local_manifests/roomservice.xml ~/android/cyanogenmod/jellybean/.repo/local_manifest.xml
Synchronize the repository:
Code:
repo sync
If synchronizing the repository, you get an error, saying it has duplicate projects, you should delete the file: local_manifest.xml.
Greetings.
Ok got it build with no errors, but it just boot loops at the 1st showing of pantech. It could be that you are using cm10.1(jelly bean), and that there is only ics available for this phone. Could you post the changes to build cm9 and then I could give that a try.
superbart007 said:
Ok got it build with no errors, but it just boot loops at the 1st showing of pantech. It could be that you are using cm10.1(jelly bean), and that there is only ics available for this phone. Could you post the changes to build cm9 and then I could give that a try.
Click to expand...
Click to collapse
Before installing the rom, have you applied?
Wipe data/factory reset;
Wipe cache partition;
Advanced -> Wipe dalvik cache;
Greetings.
Yes wiped every thing.
Sent from my PantechP8010 using xda app-developers app

Categories

Resources