[TUTORIAL]Compile rom from source[janice]

Search This thread

assassin0408

Senior Member
Jan 31, 2013
504
315
Probably your sync isn't complete

Sent from my GT-I9070 using Tapatalk 4 Beta

this error appear..

Which would you like? [full-eng] 10
build/core/product_config.mk:239: *** _nic.PRODUCTS.[[device/samsung/janice/liquid.mk]]: "vendor/samsung/janice-vendor-blobs.mk" does not exist. Stop.

** Don't have a product spec for: 'liquid_janice'
** Do you have the right repo manifest?
 

Abhinandh Ajay

Senior Member
Sep 24, 2012
457
296
Chennai
I get this error while trying to sync

Code:
fatal: error parsing manifest /home/abhi/Desktop/Development/.repo/local_manifests/local_manifest.xml: junk after document element: line 2, column 0

I already checked whether I copied the code for the local_manifest.xml wrong but when I tried redoing it, I still got the same error. :confused:
 

KINGbabasula

Inactive Recognized Developer
Jan 28, 2013
2,301
5,167
Treviso
I get this error while trying to sync

Code:
fatal: error parsing manifest /home/abhi/Desktop/Development/.repo/local_manifests/local_manifest.xml: junk after document element: line 2, column 0

I already checked whether I copied the code for the local_manifest.xml wrong but when I tried redoing it, I still got the same error. :confused:

Upload the manifest i will take a look at it

Sent from my GT-I9070 using Tapatalk 4 Beta
 

Shaaan

Inactive Recognized Developer
May 6, 2011
2,387
4,718
Mumbai
You also need framework, system/core and other stuff from teamcanjicas git.!
Also, i would recommend to first build cm to understand the process, then try other roms.
Building a new rom without correct source isn't a piece of cake. Each rom requires various modifications to even start a build.

Sent from my GT-I9070 using Tapatalk 4 Beta
 

KINGbabasula

Inactive Recognized Developer
Jan 28, 2013
2,301
5,167
Treviso
You also need framework, system/core and other stuff from teamcanjicas git.!
Also, i would recommend to first build cm to understand the process, then try other roms.
Building a new rom without correct source isn't a piece of cake. Each rom requires various modifications to even start a build.

Sent from my GT-I9070 using Tapatalk 4 Beta

Yep, adding support for janice is a mess, the way to do it changes from rom to rom
 

Toni5830

Senior Member
Jul 30, 2012
603
439
Somewhere over the Rainbow
I had problem with local_manifest.xml :(
I googled a bit, invented something and this was working..
Code:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>

<project path="kernel/samsung/u8500" name="diego-ch/android_kernel_samsung_u8500" revision="jb" remote="github" />
<project path="vendor/samsung/u8500-common" name="TeamCanjica/android_vendor_samsung_u8500-common" />
<project path="device/samsung/u8500-common" name="TeamCanjica/android_device_samsung_u8500-common" remote="github" revision="cm-10.1_staging" />
<project path="device/samsung/janice" name="TeamCanjica/android_device_samsung_janice" revision="cm-10.1_staging" />

</manifest>

I said "was working" because I had an other error
Code:
error: Exited sync due to fetch errors
I'm trying again:/

Edit: same error :mad:
 
Last edited:

KINGbabasula

Inactive Recognized Developer
Jan 28, 2013
2,301
5,167
Treviso
I had problem with local_manifest.xml :(
I googled a bit, invented something and this was working..
Code:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>

<project path="kernel/samsung/u8500" name="diego-ch/android_kernel_samsung_u8500" revision="jb" remote="github" />
<project path="vendor/samsung/u8500-common" name="TeamCanjica/android_vendor_samsung_u8500-common" />
<project path="device/samsung/u8500-common" name="TeamCanjica/android_device_samsung_u8500-common" remote="github" revision="cm-10.1_staging" />
<project path="device/samsung/janice" name="TeamCanjica/android_device_samsung_janice" revision="cm-10.1_staging" />

</manifest>

I said "was working" because I had an other error
Code:
error: Exited sync due to fetch errors
I'm trying again:/

Remove diego-ch lines

Inviato dal mio GT-I9070 con Tapatalk 2
 
  • Like
Reactions: Toni5830

Toni5830

Senior Member
Jul 30, 2012
603
439
Somewhere over the Rainbow
Code:
sh-3.2# . build/envsetup.sh
WARNING: Only bash is supported, use of other shell would lead to erroneous results
including vendor/pa/vendorsetup.sh
including sdk/bash_completion/adb.bash
including vendor/pa/bash_completion/repo.bash
sh: export: __gitdir: not a function
sh: export: __git_ps1: not a function

:(
 

KINGbabasula

Inactive Recognized Developer
Jan 28, 2013
2,301
5,167
Treviso
Code:
sh-3.2# . build/envsetup.sh
WARNING: Only bash is supported, use of other shell would lead to erroneous results
including vendor/pa/vendorsetup.sh
including sdk/bash_completion/adb.bash
including vendor/pa/bash_completion/repo.bash
sh: export: __gitdir: not a function
sh: export: __git_ps1: not a function

:(

Try to lunch even if there are errors
 

frapeti

Inactive Recognized Developer
Mar 23, 2012
1,048
4,224
Cordoba, Argentina
www.groupon.com.ar
Code:
sh-3.2# . build/envsetup.sh
WARNING: Only bash is supported, use of other shell would lead to erroneous results
including vendor/pa/vendorsetup.sh
including sdk/bash_completion/adb.bash
including vendor/pa/bash_completion/repo.bash
sh: export: __gitdir: not a function
sh: export: __git_ps1: not a function

:(

Use bash shell

Sent from my GT-I9070 using xda app-developers app
 

Top Liked Posts

  • There are no posts matching your filters.
  • 31
    Compile rom from source for janice

    0. Before you start make sure to have Ubuntu 12.04 installed, a decent internet connection and a fast pc (quad core, 4-8 GB ram)

    1. Setting up the build environment

    Code:
    sudo add-apt-repository ppa:webupd8team/java
    sudo apt-get update
    sudo apt-get install oracle-java6-installer

    2. Installing required 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 \
      gcc g++ cpp gcc-multilib g++-4.6-multilib
    
    sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so

    3. Set up ccache

    Code:
    nano ~/.bashrc

    Add these two lines

    Code:
    export USE_CCACHE=1
    export CCACHE_DIR=[COLOR="Red"]#[/COLOR]

    Replace # with your cache directory

    Press ctrl+x and then Y

    4. Setting up repo tool

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

    5. Create working directory and initialize the repo

    Code:
    mkdir [COLOR="red"]#[/COLOR]
    cd [COLOR="red"]#[/COLOR]
    repo init -u [COLOR="red"]@[/COLOR]

    Replace # with the name of the working dir (choose one)

    Replace @ with the platform_manifest (or android) repository (for AOKP @ = https://github.com/AOKP/platform_manifest.git -b jb-mr1)

    6. Set up local manifest

    Code:
    mkdir .repo/local_manifests
    touch .repo/local_manifests/local_manifest.xml
    nano .repo/local_manifests/local_manifest.xml

    Add these lines to let the repo sync download the vendor, device tree and the kernel

    4.3.1

    Code:
    <?xml version="1.0" encoding="UTF-8"?>
    <manifest>
    <project path="kernel/samsung/u8500" name="TeamCanjica/android_kernel_samsung_u8500" revision="cm-10.2" remote="github" />
    <project path="device/samsung/janice" name="TeamCanjica/android_device_samsung_janice" revision="cm-10.2" remote="github" />
    <project path="device/samsung/u8500-common" name="TeamCanjica/android_device_samsung_u8500-common" revision="cm-10.2" remote="github" />
    <project path="vendor/samsung/u8500-common" name="TeamCanjica/android_vendor_samsung_u8500-common" revision="cm-10.2" remote="github" />
    <project path="hardware/u8500" name="TeamCanjica/android_hardware_u8500" revision="cm-10.2" remote="github" />
    <project path="patches" name="KINGbabasula/STE_patches" revision="cm-10.2" remote="github" >
    <copyfile src="patch.sh" dest="patch.sh" />
    </project>
    </manifest>


    4.4.2

    Code:
    <?xml version="1.0" encoding="UTF-8"?>
    <manifest>
    <project path="kernel/samsung/u8500" name="TeamCanjica/Samsung_STE_Kernel" revision="3.0.31" />
    <project path="device/samsung/janice" name="TeamCanjica/android_device_samsung_janice" revision="cm-11.0" remote="github" />
    <project path="device/samsung/u8500-common" name="TeamCanjica/android_device_samsung_u8500-common" revision="cm-11.0" remote="github" />
    <project path="hardware/u8500" name="TeamCanjica/android_hardware_u8500" revision="cm-11.0" remote="github" />
    <project path="vendor/samsung/u8500-common" name="TeamCanjica/android_vendor_samsung_u8500-common" revision="cm-11.0" remote="github" />
    <project path="patches" name="KINGbabasula/STE_patches" revision="cm-11.0" remote="github" >
    <copyfile src="patch.sh" dest="patch.sh" />
    </project>
    <project path="packages/apps/DeviceSettings" name="TeamCanjica/android_packages_apps_DeviceSettings" revision="master" />
    </manifest>

    Here editing the local_manifest.xml you can change/add/remove repositories to download to make sync faster

    To remove a repository write this in the local_manifest.xml[/CODE]

    Code:
    <remove-project name="" />

    Replace # with the name of the repository (example )

    7. Time to sync!

    Ok this is a boring part... :(

    Code:
    repo sync -j[COLOR="Red"]#[/COLOR]

    Replace the # with the number of cores

    It can take from 10 minutes to 2 hours. It depends by your connection and your pc specs

    8. Download arm-eabi-4.6 toolchains

    Code:
    cd prebuilt/linux-x86/toolchain
    Code:
    git clone https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/arm/arm-eabi-4.6
    21
    Building

    9. Applying the patches

    Code:
    . patch.sh

    10. Finally... Time to build!!! :laugh:

    This can be boring too if you have bad pc specs

    Code:
    . build/envsetup.sh
    
    lunch full_janice-userdebug
    
    make -j[COLOR="Red"]#[/COLOR] otapackage

    Replace # with the number of cores of your pc
    13
    Understanding where are the bugs

    The first thing to do to understand where the bugs are is taking logcat

    1.Open a terminal

    2.cd to the adb folder

    3.Write this to check that the device is recognized

    Code:
    adb devices

    If serial shows continue

    4.Now write this

    Code:
    adb logcat > logcat.txt

    5.Wait 30 seconds and close the terminal

    6.logcat.txt is the file containing the logcat

    Or download my little tool from attachments and run logcat.bat

    Reading the logcat

    Search for the
    Code:
    E/> = error
    F/> = fatal
    12
    If you edited something after building... Rebuild!

    cd to working dir and type this

    Code:
    . patch.sh
    
    . build/envsetup.sh
    
    lunch full_janice-userdebug
    
    make clean
    
    make -j[COLOR="Red"]#[/COLOR] bacon

    Replace # with the number of cores
    4
    You also need framework, system/core and other stuff from teamcanjicas git.!
    Also, i would recommend to first build cm to understand the process, then try other roms.
    Building a new rom without correct source isn't a piece of cake. Each rom requires various modifications to even start a build.

    Sent from my GT-I9070 using Tapatalk 4 Beta