[AT&T Samsung Galaxy Note I717] JamieD81:
firstly id like to thank project rookie over in the skyrocket section as i used their guide for this and changed it up for quincyatt, you guys are doing a great job promoting building keep it up! hope i can continue that here!

Instructions for building unofficial CM-10.1 and CM-10,2 for quincyatt

Disclaimer:

The releases, instructions, and extras posted here are to be used at your own risk. We work hard to provide good, workable knowledge and builds, and test our work before posting it up front. Nevertheless, no one is responsible if you lose your files, brick your device, or inadvertently cause a nuclear war. If you are seeking absolute perfection, RUN NOW WHILE YOU STILL CAN!!

READ ME THREE TIMES :

:)

On one hand, it should go without saying that if you have no knowledge and/or experience with building, java, C++, and various other tools, you probably shouldn't begin here. At the same time, it is possible to learn to build, provided you can read, follow directions, and aren't too lazy to RESEARCH. OH YEAH, and you better have patience. It ain't easy. It will be work. The quickest way to get flamed is to show yourself to be lazy. If you think that with a couple clicks, you can have your own flashy ROM, forget it. But, if you do want to learn, this is a good place to get started. Nobody here has an ego about this, and we all want to help. But, we all struggled to get to a successful point, and lazy, unmotivated people just irritate those who have had to learn from scratch too. THIS link should be your absolute most used link. Have a nice day

GETTING STARTED

THIS GUIDE IS FOR 64BIT LINUX OS

recommended: quadcore cpu, 8gb+ ram

Setting up your environment (only needs to be done once) :

Tip: Allocate at least 75 gigs of space for the building of ONE ROM. If you install ccache, you will want 90. A complete build directory can use as much as 100 gigs, so make sure you have plenty of room. One of the ways to fail out a build is too use all of your partition before acquiring all the neccesary files.

Here are the steps for setting up build environment from those 2 tutorials in correct order:

1)You need the following:

-JDK 6 if you wish to build Jellybean.

$ sudo apt-get install openjdk-6-jdk

-Python 2.4 -- 2.7, which you can download from python.org. Or:

$ sudo apt-get install python

-Git 1.7 or newer. You can find it at git-scm.com. Or:

$ sudo apt-get install git-core

-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:

# 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:

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:

$ android

2) Install required packages. 64-bit (recommended)

$ 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

On older versions of Ubuntu such as 11.10 you may need to do the following:

$ sudo ln -s /usr/lib/i386-linux-gnu/libX11.so.6 /usr/lib/i386-linux-gnu/libX11.so

Building on Ubuntu 12.04 is currently only experimentally supported and is not guaranteed to work on branches other than master. with that said, i build on 12.04 without issue :)

$ 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

3) Configure your USB.

$ gksudo gedit /etc/udev/rules.d/51-android.rules

Inside of this blank text file insert:

#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"

4) Save the file and close it and then issue this command:

$ sudo chmod a+r /etc/udev/rules.d/51-android.rules

5) Install the repo:

$ mkdir ~/bin
$ PATH=~/bin:$PATH
$ curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+x ~/bin/repo

This is what you need to begin building. From here, CM-10.1 can be built with a few additions and commands.

BUILDING UNOFFICIAL CM10.2 :

Create your work directory:

mkdir ~/"your directory name here" For example: mkdir ~/cm102
cd ~/cm102

Initialize the work directory:

repo init -u git://github.com/CyanogenMod/android.git -b cm-10.2

Create and edit local_manifest.xml in .repo: /.repo/local_manifests/local_manifest.xml (hidden folder press CTRL+H to unhide)

<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="CyanogenMod/android_device_samsung_msm8660-common" path="device/samsung/msm8660-common" remote="github" revision="cm-10.2" />
<project name="CyanogenMod/android_device_samsung_quincyatt" path="device/samsung/quincyatt" remote="github" revision="cm-10.2" />
<project name="CyanogenMod/android_device_samsung_qcom-common" path="device/samsung/qcom-common" remote="github" revision="cm-10.2" />
<project name="CyanogenMod/android_device_samsung_quincy-common" path="device/samsung/quincy-common" remote="github" revision="cm-10.2" />
<project name="CyanogenMod/android_kernel_samsung_msm8660-common" path="kernel/samsung/msm8660-common" remote="github" revision="cm-10.2" />
<project name="TheMuppets/proprietary_vendor_samsung" path="vendor/samsung" remote="github" revision="cm-10.2" />
</manifest>

repo sync -j16 (this will take a few hours, use -j4 if you have slower internet)

To Build:

. build/envsetup.sh (notice the period and space)
vendor/cm/get-prebuilts
repo sync -j16 (again use -j4 for slower internet)
brunch quincyatt -j7 (lower for slower cpu's)

**After you build, your repo files will remain in place. This will cause your future builds to be based from that specific time of additions and merges. Wiping or 'cleaning' your files often will ensure that your builds are the most up-to-date. To be sure that you start with a fresh repo at the beginning of every build, you should 'make clean' often. For example:

$ cd ~/cm102
$ make clean (or 'make clobber' without quotes)

If you want to have your 'cleaning service' done as part of your process, this is a way to achieve it:

$ cd cm102
$ repo sync -j16
$ . build/envsetup.sh && make clobber && brunch quincyatt -j7 (lower if you have a slower cpu)

This will make the cleaning process automatic.

The Git can be found here:

GIT

The Gerrit can be found here:

GERRIT

again thanks goes out to project rookie and everyone that has helped them! visit their thread *linked at top* and shoot them a thanks!

i will fine-tune the look of the thread over time including adding different rom's to build but if you know what your doing this should be pretty straight forward but also informative enough to possibly start learning :)

Lastly, please be kind to other users, this is a thread for learning so if your not going to be helpful just continue being a reader of this thread rather than a poster :) also if you see someone asking a question you can answer please do so! this thread is here to learn from and hopefully help grow the dev section and future phone sections :)
​