HTC HD2 Finally Dead? (Developers needed) - HD2 Android Q&A, Help & Troubleshooting and Genera

Posting here because the general forums are down currently.
So for the past week or so, both me and J0SH1X have been working on an Android Oreo 8.1 port for the HD2,
So far we have gotten to a point where the ROM will start booting and you can log it via ADB which was step 1 of things we had to fix however soon we encountered a bug with the display which seems unfixable, the issue here being to do with the Adreno 200 blobs we are using. So far we have fixed the display HAL and tried many combinations of blobs with source side patches on top just to end up in the same position. The issue seems to stem from GL_OUT_OF_MEMORY errors or surfaceflinger dequeuing 2 buffers when our GPU will only support 1, despite many patches this same issue still seems to exist on our blobs from macs18max on Nougat.
We haven't given up yet so this is a call out to other devs who are much more knowledgeable on this kind of stuff than we are. Our trees and patches are fully public and some may have noticed that we have been actively developing at https://github.com/qsd8k-legacy for the HD2. If you are a dev who knows more about this then attached I have posted some logs from our progress so far, feel free to PM me either here on XDA (slow replies though) or on Telegram (@TheOGLunarixus).
To install ROM's made from our trees you will need to repartition the SD card still and use blackClK + the TWRP image attached (repartition your SD card in macs TWRP first) (devs only)
TWRP download link: https://drive.google.com/open?id=139hIx_oBBGLXfdMyJdZc63Ma_zgShnnH
Credit goes to rINanDO and macs18max (+ his team) for the kernel 3.0 and HTC HD2 work they've been doing and Renan Queiroz for helping with the initial bring-up.
Hopefully soon we can follow this project up with good news.
Log for oom error: https://hastebin.com/ugenalesuv.pl
Full boot log with display issue (omx crash has since been fixed): https://hastebin.com/sisugukaqi.bash

WOW!!! i wish you guys best of luck... I still have my HD2 running, its my backup phone. If there is anything I can do for you guys, hit me up!

I have 2 HD2 up and running. One has broken USB port though. These phones are so cheap now on eBay currently glad to see someone else trying to get a newer Android build running on this phone. Bookmarked your sources I am installing Ubuntu 14.04 to compile a build right now.

Great to see activity again on the HD2 forums ! The HD2 lovers are all here to help I'm sure ?

I currently have sources for Lineage 15.1 Android 8.1 synced but am currently battling through local_manifest.xml and adding lineage_leo as a device to lunch. If anyone wants to lend a hand message me.
build/core/product_config.mk:238: *** Can not locate config makefile for product "leo". Stop.
Device leo not found. Attempting to retrieve device repository from LineageOS Github (http://github.com/LineageOS).
Found repository: android_device_htc_leo
Default revision: lineage-15.1
Checking branch info
Using fallback branch: cm-7.1.0
Checking if device/htc/leo is fetched from android_device_htc_leo
Adding dependency: LineageOS/android_device_htc_leo -> device/htc/leo
Using fallback branch cm-7.1.0 for android_device_htc_leo
Syncing repository to retrieve project.
repo: warning: Python 2 is no longer supported; Please upgrade to Python 3.6+.
error: info is different in /home/chronic/android/lineage/.repo/projects/device/htc/leo.git vs /home/chronic/android/lineage/.repo/project-objects/LineageOS/android_device_htc_leo.git
Retrying clone after deleting /home/chronic/android/lineage/.repo/projects/device/htc/leo.git
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
0 0 0 0 0 0 0 0 --:--:-- 0:00:03 --:--:-- 0
curl: (22) The requested URL returned error: 404 Not Found
Server does not provide clone.bundle; ignoring.
fatal: Couldn't find remote ref refs/heads/cm-7.1.0
fatal: Couldn't find remote ref refs/heads/cm-7.1.0
error: Cannot fetch LineageOS/android_device_htc_leo from https://github.com/LineageOS/android_device_htc_leo
Fetching projects: 100% (1/1), done.
error: Cannot checkout LineageOS/android_device_htc_leo: ManifestInvalidRevisionError: revision cm-7.1.0 in LineageOS/android_device_htc_leo not found
error: in `sync --force-sync device/htc/leo`: revision cm-7.1.0 in LineageOS/android_device_htc_leo not found
Repository synced!
Looking for dependencies in device/htc/leo
device/htc/leo has no additional dependencies.
Done
build/core/product_config.mk:238: *** Can not locate config makefile for product "leo". Stop.
build/core/product_config.mk:238: *** Can not locate config makefile for product "leo". Stop.
** Don't have a product spec for: 'leo'
** Do you have the right repo manifest?

Well I got a bit further in the build.......
[email protected]:~/android/lineage$ brunch htcleo
including vendor/lineage/vendorsetup.sh
Trying dependencies-only mode on a non-existing device tree?
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=8.1.0
LINEAGE_VERSION=15.1-20200224-UNOFFICIAL-htcleo
TARGET_PRODUCT=lineage_htcleo
TARGET_BUILD_VARIANT=userdebug
TARGET_BUILD_TYPE=release
TARGET_PLATFORM_VERSION=OPM1
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
TARGET_CPU_VARIANT=generic
TARGET_2ND_ARCH=
TARGET_2ND_ARCH_VARIANT=
TARGET_2ND_CPU_VARIANT=
HOST_ARCH=x86_64
HOST_2ND_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-4.15.0-45-generic-x86_64-with-Ubuntu-16.04-xenial
HOST_CROSS_OS=windows
HOST_CROSS_ARCH=x86
HOST_CROSS_2ND_ARCH=x86_64
HOST_BUILD_TYPE=release
BUILD_ID=OPM7.181205.001
OUT_DIR=/home/chronic/android/lineage/out
AUX_OS_VARIANT_LIST=
============================================
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=8.1.0
TARGET_PRODUCT=lineage_htcleo
TARGET_BUILD_VARIANT=userdebug
TARGET_BUILD_TYPE=release
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
TARGET_CPU_VARIANT=generic
HOST_ARCH=x86_64
HOST_2ND_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-4.15.0-45-generic-x86_64-with-Ubuntu-16.04-xenial
HOST_CROSS_OS=windows
HOST_CROSS_ARCH=x86
HOST_CROSS_2ND_ARCH=x86_64
HOST_BUILD_TYPE=release
BUILD_ID=OPM7.181205.001
OUT_DIR=/home/chronic/android/lineage/out
============================================
ninja: no work to do.
ninja: no work to do.
/home/chronic/android/lineage/out/build-lineage_htcleo.ninja is missing, regenerating...
[742/1071] including ./system/sepolicy/Android.mk ...
./system/sepolicy/Android.mk:99: warning: BOARD_SEPOLICY_VERS not specified, assuming current platform version
[1071/1071] including ./vendor/qcom/opensource/rcs-service/Android.mk ...
[ 99% 1276/1277] glob vendor/qcom/opensource/interfaces/wifi/supplicant/1.0/Android.bp
ninja: error: 'frameworks/native/data/etc/go_handheld_core_hardware.xml', needed by '/home/chronic/android/lineage/out/target/product/htcleo/system/etc/permissions/handheld_core_hardware.xml', missing and no known rule to make it
09:46:19 ninja failed with: exit status 1
#### failed to build some targets (02:31 (mm:ss)) ####

chronic8000 said:
Well I got a bit further in the build.......
[email protected]:~/android/lineage$ brunch htcleo
including vendor/lineage/vendorsetup.sh
Trying dependencies-only mode on a non-existing device tree?
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=8.1.0
LINEAGE_VERSION=15.1-20200224-UNOFFICIAL-htcleo
TARGET_PRODUCT=lineage_htcleo
TARGET_BUILD_VARIANT=userdebug
TARGET_BUILD_TYPE=release
TARGET_PLATFORM_VERSION=OPM1
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
TARGET_CPU_VARIANT=generic
TARGET_2ND_ARCH=
TARGET_2ND_ARCH_VARIANT=
TARGET_2ND_CPU_VARIANT=
HOST_ARCH=x86_64
HOST_2ND_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-4.15.0-45-generic-x86_64-with-Ubuntu-16.04-xenial
HOST_CROSS_OS=windows
HOST_CROSS_ARCH=x86
HOST_CROSS_2ND_ARCH=x86_64
HOST_BUILD_TYPE=release
BUILD_ID=OPM7.181205.001
OUT_DIR=/home/chronic/android/lineage/out
AUX_OS_VARIANT_LIST=
============================================
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=8.1.0
TARGET_PRODUCT=lineage_htcleo
TARGET_BUILD_VARIANT=userdebug
TARGET_BUILD_TYPE=release
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
TARGET_CPU_VARIANT=generic
HOST_ARCH=x86_64
HOST_2ND_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-4.15.0-45-generic-x86_64-with-Ubuntu-16.04-xenial
HOST_CROSS_OS=windows
HOST_CROSS_ARCH=x86
HOST_CROSS_2ND_ARCH=x86_64
HOST_BUILD_TYPE=release
BUILD_ID=OPM7.181205.001
OUT_DIR=/home/chronic/android/lineage/out
============================================
ninja: no work to do.
ninja: no work to do.
/home/chronic/android/lineage/out/build-lineage_htcleo.ninja is missing, regenerating...
[742/1071] including ./system/sepolicy/Android.mk ...
./system/sepolicy/Android.mk:99: warning: BOARD_SEPOLICY_VERS not specified, assuming current platform version
[1071/1071] including ./vendor/qcom/opensource/rcs-service/Android.mk ...
[ 99% 1276/1277] glob vendor/qcom/opensource/interfaces/wifi/supplicant/1.0/Android.bp
ninja: error: 'frameworks/native/data/etc/go_handheld_core_hardware.xml', needed by '/home/chronic/android/lineage/out/target/product/htcleo/system/etc/permissions/handheld_core_hardware.xml', missing and no known rule to make it
09:46:19 ninja failed with: exit status 1
#### failed to build some targets (02:31 (mm:ss)) ####
Click to expand...
Click to collapse
remove go_ from go_handheld_core in device.mk so it will be handheld_core

Well LineageOS 15.1 has just completed compiling. If anyone is actually here with an HD2 and wants to test here is the ZIP file. https://1drv.ms/u/s!Am0vXJlBysw-k8dZxT9zuRErlGUY1g?e=fQjRz0
Bear in mind I haven't even tried this on my device yet it literally finished compiling 5 minutes ago so it is at your own risk.
---------- Post added at 08:57 PM ---------- Previous post was at 08:53 PM ----------
Sorted it out anyway now. Completed and completely untested ROM is above.
J0SH1X said:
remove go_ from go_handheld_core in device.mk so it will be handheld_core
Click to expand...
Click to collapse

am I right in thinking this is run solely from the sd card on 2 ext4 partitions? It looks that way from the updater script
Thank you chronic8000

hello , i have try but no succes !
i have two ext4 partitions on my sdcard .
it's a long time without my hd2 and perhaps i 'm wrong

Robbie P said:
am I right in thinking this is run solely from the sd card on 2 ext4 partitions? It looks that way from the updater script
Thank you chronic8000
Click to expand...
Click to collapse
I think so yes. I don't even know if this ROM actually works yet this is just the first build and I am yet to get recovery to flash it. Been too busy to test but when I first tried to flash using cLK black and TWRP it said "This rom is meant for htcleo and this device is . - failed" but there is a workaround for that using terminal in TWRP according to the XDA bible. I changed my TWRP before I discovered that though and now I can't flash anything till I change it back as it can't access any partitions for some reason I am yet to figure out. Getting used to the HD2 again after all these years lol.
ROM forum:
https://forum.xda-developers.com/hd2-android/nand-dev/lineageos-15-1-android-8-1-htc-hd2-t4058163.
---------- Post added at 02:50 PM ---------- Previous post was at 02:47 PM ----------
Robbie P said:
Thank you chronic8000
Click to expand...
Click to collapse
Don't thank me yet not even got it flashed on a phone yet

philipped346 said:
hello , i have try but no succes !
i have two ext4 partitions on my sdcard .
it's a long time without my hd2 and perhaps i 'm wrong
Click to expand...
Click to collapse
That is the same error I got working on a fix now...

sorry, looking at fstab, the rom is loaded from emmc. However the Leo uses mtd so we either need to edit fstab to load from mtdblock0p1 etc. or preferably edit fstab to use sdcard ext4 partitions. And edit the updater script to suit

Robbie P said:
sorry, looking at fstab, the rom is loaded from emmc. However the Leo uses mtd so we either need to edit fstab to load from mtdblock0p1 etc. or preferably edit fstab to use sdcard ext4 partitions. And edit the updater script to suit
Click to expand...
Click to collapse
Cool we are getting somewhere I can edit and recompile if needed. I am really new to Android ROM development but nice to see someone willing to help get this working. Better to edit the ZIP directly or edit and recompile?

chronic8000 said:
That is the same error I got working on a fix now...
Click to expand...
Click to collapse
"# ro.build.product is obsolete; use ro.product.device" from the build.prop, so changing the updater script (in META-INF\com\google\android\) should fix this
---------- Post added at 04:31 PM ---------- Previous post was at 04:28 PM ----------
chronic8000 said:
Cool we are getting somewhere I can edit and recompile if needed. I am really new to Android ROM development but nice to see someone willing to help get this working. Better to edit the ZIP directly or edit and recompile?
Click to expand...
Click to collapse
I can try and edit the zip, but will take a bit of time as I need to get magldr on phone to use a script to edit the ramdisk. Also need to tidy up before the missus gets back and revise for a sort of exam on Monday. But am excited, so might give it a go
---------- Post added at 04:34 PM ---------- Previous post was at 04:31 PM ----------
how long does recompiling take?

this is the way i developed the rom and flashed and tested it on my own hd2
chronic8000 said:
Well LineageOS 15.1 has just completed compiling. If anyone is actually here with an HD2 and wants to test here is the ZIP file. https://1drv.ms/u/s!Am0vXJlBysw-k8dZxT9zuRErlGUY1g?e=fQjRz0
Bear in mind I haven't even tried this on my device yet it literally finished compiling 5 minutes ago so it is at your own risk.
---------- Post added at 08:57 PM ---------- Previous post was at 08:53 PM ----------
Sorted it out anyway now. Completed and completely untested ROM is above.
Click to expand...
Click to collapse
well this is not likely to pass the htc logo at all also no adb will work , it needs multiple patches also graphic stack (adreno gpu firmware) is badly broken and leaks thus it will always report out of memory , i wasnt able to fix this even tho trying multiple patches with lunarixus.
also adb needs a patch to work on los if you want better compatibility use android unlegacy project thats what lunarixus and i used for our last tests and it seemed to have slightly better compatibility with older devices then los
---------- Post added at 05:18 PM ---------- Previous post was at 05:17 PM ----------
chronic8000 said:
I think so yes. I don't even know if this ROM actually works yet this is just the first build and I am yet to get recovery to flash it. Been too busy to test but when I first tried to flash using cLK black and TWRP it said "This rom is meant for htcleo and this device is . - failed" but there is a workaround for that using terminal in TWRP according to the XDA bible. I changed my TWRP before I discovered that though and now I can't flash anything till I change it back as it can't access any partitions for some reason I am yet to figure out. Getting used to the HD2 again after all these years lol.
ROM forum:
https://forum.xda-developers.com/hd2-android/nand-dev/lineageos-15-1-android-8-1-htc-hd2-t4058163.
---------- Post added at 02:50 PM ---------- Previous post was at 02:47 PM ----------
Don't thank me yet not even got it flashed on a phone yet
Click to expand...
Click to collapse
comment out the otapackage device stuff in device/htc/htcleo/BoardConfig.mk then it will flash properly
---------- Post added at 05:26 PM ---------- Previous post was at 05:18 PM ----------
1. flash blackCLK with embedded twrp
2. in blackCLK settings make mtd as following BOOT: 15MB RECOVERY: 15MB the rest doesnt matter
3. push this twrp to the sdcard while booted into blackCLK embedded twrp open a shell by typing adb shell and type there "erase_image recovery && flash_image recovery /sdcard/twrp.img"
4.shut down your hd2 and insert the sdcard into your pc partition it as following i used a 16gb card so set this as you need but keep system 1024 my partition layout is 8192MB FAT32 SD-Data;6656MB EXT4 DATA;1024MB EXT4 SYSTEM;512MB EXT4 CACHE
5. reinsert the sd and boot into twrp you will see it changed now , wipe data cache and system by using change fs/repair function of wipe menu
6. reboot twrp
7. remove the top line and the line writing boot.img of updater-script and save
8. copy the rom over to your phone and flash it
9. extract boot.img from the zip and push it to sdcard in updated twrp, open a shell with adb shell and type "erase_image boot && flash_image boot /sdcard/boot.img

I'd like to clarify
There is a reason I didn't release the zips for this ROM, because it does not boot at all, it gets ADB with some hacks and that's it, this thread is a callout for developers to help us with the display stack, we have not announced that this is working at all.

Can you make android 9 and 10 custom rom for HTC HD2

What's the lightest and most stable version of Android that the HD2 can run atm? It might be worth it to go back and improve something, since current versions are so demanding.

Kovaelin said:
What's the lightest and most stable version of Android that the HD2 can run atm? It might be worth it to go back and improve something, since current versions are so demanding.
Click to expand...
Click to collapse
The android version that ran at its peak (in terms of stability and speed) was gingerbread (GB)... after that, kitkat was good, but not as fast as GB.

Related

New Phone.apk created, work on Emulator

Hi,
I created a custom Phone.apk, I changed a bit the behavior, the Dialpad etc.etc so this works great, I compiled it against the Platform and it works on the Emulator.
But now I'm trying to put it on the Wildfire (I did an adb pull from the Emulator) and I've now the Phone.apk, I tried to put it with adb rm and then adb push.
So the Problem is not the installation, the Problem is that I can't get it to work.... on the Wildfire...what's wrong?
Any Ideas would be highly appreciated
Thanks
Does really no-one has clue? In which Direction should I go? What can I try?
Please help-me also if I've not 1000 Posts :-(
I've no logged with adb what happens on the Device, the following Error I get, but this make's no sense for me :-(
FATAL EXCEPTION: main
E/AndroidRuntime( 413): android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.CALL_PRIVILEGED dat=tel:123 flg=0x10000000 }
Any Ideas?
I tried now to flash the Phone.apk with several strategies...
-> update.zip
-> adb & cat
-> custom Rom (cooked)
But i really don't now why it fails...omg...
Upload the file and I will try and install it.
Thanks already, I will do it, but maybe I've found the Error...
I now recompiled the Phone.apk...
And tried it with adb install and terminal was saying that I've an OLD SDK...
Failure [INSTALL_FAILED_OLDER_SDK]
So, on the Device there's running Froyo...so it can't be OLD?
But when I'm compiling it, I'm doing a source envsetup.sh and then a lunch 1.
Could it be that I've to compile it some how different???
Thanks for EVERY reply!
Update:
I'm building with this config:
PLATFORM_VERSION_CODENAME=AOSP
PLATFORM_VERSION=AOSP
TARGET_PRODUCT=generic
TARGET_BUILD_VARIANT=user
TARGET_SIMULATOR=false
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
HOST_ARCH=x86
HOST_OS=darwin
HOST_BUILD_TYPE=release
BUILD_ID=OPENMASTER
So I really don't now why I'm getting the OLDER_SDK message...I was looking in the make files and there's the SDK 8....
So I've uploaded it, maybe someone could help me to go a step further
link to Phone.apk
Problem solved...I updated the use-sdk Version in the AndroidManifest.xml of the Phone app.
Can be closed
link dead. do you have any screenshot of your new phone.apk, what do you change? when you say behavior
It's changed relatively static for my Phone Number and my Voicemail Number...so it isn't handy for others...but I will keep up my Work and try several things and If I've something to give to the XDA-Users I will do it.
Thanks for you interest

[Q] Javac 1.6 problem.

Hey guys I'm a first time poster here, and I am really hoping someone can help me. I am trying to build a ROM from CyanogenMOD source for the Moto Droid 1. whenever I run the "make" command this is what I get:
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=2.2.1
TARGET_PRODUCT=generic
TARGET_BUILD_VARIANT=eng
TARGET_SIMULATOR=
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
HOST_ARCH=x86
HOST_OS=linux
HOST_BUILD_TYPE=release
BUILD_ID=FRG83
============================================
Checking build tools versions...
************************************************************
You are attempting to build with the incorrect version
of javac.
Your version is: javac 1.5.0_19.
The correct version is: 1.6.
Please follow the machine setup instructions at
************************************************************
build/core/main.mk:130: *** stop. Stop.
Click to expand...
Click to collapse
Is there something else I should try? I'm a new Dev in training and I'm at my wits end if someone could tell me how to update javac that would be greatly appreciated. And I am also having trouble getting ADB to work when I try to extract the Sholes files from my phone. Any help on that would help too thanks. By the way I am running Ubuntu 10.10, and Cyanogen 6.1RC3
Javac Problem
Android build system is picky about Java versions. I would download and install official JDK 1.6
Before compiling make sure that your PATH points to the newly installed Java 1.6. Also make sure your ANDROID_JAVA_HOME and JAVA_HOME point to your newly installed JDK 1.6

[Guide][9/3/2015] Building CM12 for the Nexus 6 Shamu

Building CM12 from source for the Nexus 6 Shamu!
Thanks goes to @scrosler and @GROGG88 and @sykopompos for their amazing guide
[Guide][1/19/2015] Buulding AOSP for the Nexus 6!​
This guide will walk you through, how to build CM12 for the Nexus 6 from source. To complete this, you will need a PC with either virtual box setup and Ubuntu or duel boot Windows and Ubuntu. I recommend duel booting as it gets better results.​
Ideally your PC will need a minimum of an I5 processor and 8GB of ram. I won't go into too much detail on how to setup Ubuntu on your PC. For this guide, you do need to know the basic commands and how to use Ubuntu.
This guide is very similar in process to @scrosler and @GROGG88 and @sykopompos amazing guide here: [Guide][1/19/2015] Building AOSP for the Nexus 6! Through the use of their guide and asking a lot of questions on their thread, I was able to learn how to build AOSP from source. My guide is to complement their guide and show you how to build CM12, I found switching from AOSP to CM12 fairly easy, but there were a few changes in the process.
For my guide I will be using CM12 build guide as reference for the commands. How To Build CyanogenMod Android for Google Nexus 6 ("shamu") Even their guide is not 100% up to date, so I had to make a few changes.
Disclaimer:
I am not responsible for any damage done to your device, thermal nuclear war etc. Please use at your own risk. Your warranty may be affected if you install a custom rom. I am also not responsible if you go over your payment plan when downloading the source code. It is large over 16gb so be careful!
Click to expand...
Click to collapse
So assuming you have Ubuntu 14.* set up, you will need to now set up your build environment:
First on their guide it talks about installing the SDK tools. You do not need these to build the ROM. You only really need ADB commands. I installed fastboot as well.
Install ADB command
Code:
sudo apt-get install android-tools-adb
Install Fastboot command
Code:
sudo apt-get install android-tools-fastboot
Install Java
Code:
sudo apt-get install openjdk-7-jdk
Setting up the build enviroment
Code:
bison build-essential curl flex git gnupg gperf libesd0-dev liblz4-tool libncurses5-dev libsdl1.2-dev libwxgtk2.8-dev libxml2 libxml2-utils lzop openjdk-6-jdk openjdk-6-jre pngcrush schedtool squashfs-tools xsltproc zip zlib1g-dev
If you have a 64bit PC install the following:
Code:
g++-multilib gcc-multilib lib32ncurses5-dev lib32readline-gplv2-dev lib32z1-dev
Setting your build directory - This can be any folder you want. for my example I will use android as my root folder. Remember that Ubuntu is case sensitive when switching folders.
Code:
mkdir -p ~/bin
mkdir -p ~/android
Install Repo
Code:
curl [URL]https://storage.googleapis.com/git-repo-downloads/repo[/URL] > ~/bin/repo
chmod a+x ~/bin/repo
Put the ~/bin directory in your path of execution - In recent versions of Ubuntu, ~/bin should already be in your PATH. You can check this by opening ~/.profile with a text editor and verifying the following code exists (add it if it is missing):
Code:
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
fi
Now for the good bit! We are about to download the source for cm12. Warning: The download is large and will take a long time to download. I have a 38mb fiber connection and unlimited data plan, so it is ok for me to download. I believe the download is 16gb+ in size, so you will have to take this into consideration. Note: I will not be held responsible if you go over your payment plan with your service provider. This is were I have had to start changing the guide a bit as CM's document is for building CM11. It has not been updated to CM12 yet.
Identify Yourself to the Repo
Code:
git config --global user.email "[email protected]"
git config --global user.name "yourpreferredusername"
Initialize the CyanogenMod source repository
Code:
cd ~/android [B]- this is your root folder[/B]
repo init -u [URL]https://github.com/CyanogenMod/android.git[/URL] -b cm-12.0
Download the source code - Note this will take a while, as mentioned it is over 16gb in size. Even with my connection it takes about an hour and a half to download, so time for coffee!
Code:
repo sync
If repo sync errors and stops during download, don't worry you can simply run the command again and it will pick up were it left off. If you get a lot of errors during download, I recommend using
Code:
repo sync -j1
This seems to download the source better. When you have completed the download run it again, to make sure it completes with out any errors. This way you know you have downloaded the full source code.
Backup your home directory
Also at this point, what I do is make a backup using the inbuilt backup software in ubuntu. This backs up my entire home directory to a secondary hard drive I have set up in my PC. This way if I have any issues and need to start from scratch, I can simply delete my android directory, then restore from backup. I then have a fresh working copy and don't have to spend time downloading source from CM12 again. I would also recommend this as part of scrosler's guide as well, when you have finished downloading AOSP source.
Vendor and device specific files
Now this is were the cm12 guide starts to differ a bit from AOSP. AOSP you have to download the vendor files and extract them and then add in missing ones as well. CM12 differs here. At this point I would recommend having CM12 on your Nexus 6. It uses ADB to pull files from your phone and set up the device specific files and the vendor files. I found having CM12 on the phone made life easier at this point. You can use my ROM as an example here: [ROM][5.0.2][CM12 - Android L][LRX22G] Version 1.0.0 - [8/03/2015] - Native LED's
Code:
cd ~/android
source build/envsetup.sh
breakfast shamu
Extract proprietary blobs
Now ensure that your Nexus 6 is connected to your computer via the USB cable and that you are in the ~/android/device/moto/shamu directory, then run the extract-files.sh script
Code:
cd ~/android/device/moto/shamu
./extract-files.sh
Turn on caching to speed up build
You can speed up subsequent builds by adding: the following command to your to your .bashrc file To do this close your terminal window and then reopen and type ./.bashrc - A text editor will open. Add this line to the bottom of the page.
Code:
export USE_CCACHE=1
Close the text editor and save the file
Then in the command window type the following. CM12 recommend 50GB, but you can change to what ever you want.
Code:
prebuilts/misc/linux-x86/ccache/ccache -M 50G
Building CM12!!!!
Now you are all set to start building CM12. You have everything you need. So run the following commands:
Code:
cd ~\android
source build/envsetup.sh
brunch shamu
Thats it! CM12 is now building. This will take some time to build. I do recommend a duel boot PC as it works better than in Virtual Box. Even in my PC it takes about an hour and a half to do a fresh build and about 15 minutes to do a dirty build.
So once the build finishes you now have a flash-able version of CM12 from their latest source that you can flash on your Nexus 6 - Congratulations - you are now among the elite who can build their own ROM from source
The zip file is stored in the following directory:
Code:
cd ~/android/out/target/product/shamu/cm-12-20150308-UNOFFICIAL-shamu.zip
The file name will depend on the day you build the ROM, so it may be slightly different.
Here is an example output of a successful build of CM12!
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
​ Note of caution here:
Now that you have built CM12 as in AOSP I would not recommend flashing at this stage, it will make the following changes to your phone:
Install stock recovery
Encrypt your phone
To get around these we will need to make the following changes. See post 2 on how to make the changes.
As mentioned in post 1, after building CM12 you dont really want to flash it yet. It will:
Install stock recovery
Encrypt your phone - This is optional you can leave it to encrypt, but it is best to give the user the choice to do so or not.
In this post, I will also show you how to make other changes, eg: changing default wallpaper etc. I have a GitHub setup for this and all you need to do, is cherry-pick the commands into your folder, then compile the rom. My main source for all my changes are located here: https://github.com/StephenRJ - you are free to use these changes, but please give credit if you do.
Disable recovery.
Code:
cd ~/android/system/core/rootdir
git init
git fetch https://github.com/StephenRJ/cm12_system_core_rootdir.git
git cherry-pick f413ac907961c07f07f767ceb568deb4881e9f57
This next cherry-pick command will all the user the option of setting encryption on the phone, rather than it being automaticly encrypted.
Disable encryption
Code:
cd ~/android/device/moto/shamu
git init
git fetch https://github.com/StephenRJ/cm12_device_moto_shamu.git
git cherry-pick 7459b0d54102fbee27f363e7612b83f614a0f8c4
Now you have both of these disabled, you will need to do a fresh build again. To do this, I simply delete the out folder. Open file manager and go to android - then delete the folder out. This will let you make a full build again.
Close your terminal window and reopen.
Start a fresh build
Code:
cd ~/android
source build/envsetup.sh
brunch shamu
Now you can flash CM12 on your Nexus 6 Shamu Congratulations!!!!!
I will continue to add more fixes here has I find them.
Here are a couple of video tutorials I have found on setting up a basic Ubuntu enviroment.
Virtual Box: https://www.virtualbox.org/wiki/Downloads
Ubuntu ISO: http://www.ubuntu.com/download/desktop
Tutorial on setting up Virtual box on Windows 7 / 8
Duel boot Windows 8 and Ubuntu - Prefered method
Disclaimer
I am not responsable for anything that happens to your PC during the install of Ubuntu. I recommend taking a full backup first before installing a second operating system. Do this at your own risk. If your are not sure about installing different oprating systems, use the first method as it is safer
Click to expand...
Click to collapse
Change Log
Version 1.0.0
- Initial release
Please feel free to share here and help each other. I hope this guide is as useful to users as scrosler's has been. With out his help and guide, I would have never have been able to learn how to build AOSP for this amazing phone. I hope this guide gives more users the chance to build CM12 as well.
Using this guide, I have built and released a ROM. Please have a look here: [ROM][5.0.2][CM12 - Android L][LRX22G] Version 1.0.0 - [8/03/2015] - Native LED's
Please feel free to try it and report back!
I would suggest using a local manifest and getting your vendor files from TheMuppets repo. That way you stay up to date on any changes that are made.
Thanks for the tip. Could you explain a bit more on how to do that? I had installed an existing stock CM12 rom on the phone and then used the commands to remotely pull the files from it.
Stephen said:
Thanks for the tip. Could you explain a bit more on how to do that? I had installed an existing stock CM12 rom on the phone and then used the commands to remotely pull the files from it.
Click to expand...
Click to collapse
CM's wiki has a pretty good guide.
http://wiki.cyanogenmod.org/w/Doc:_Using_manifests#The_local_manifest
Also, not sure the recovery thing mentioned is an issue. I've been building CM for this device for nearly 2 months and have had no issues with TWRP being replaced.
Excellent guide! Now I just need a Nexus 6... :silly:
I love seeing useful tutorials being posted. That's why I got involved in @scrosler's thread. Nice job!!
akellar said:
Also, not sure the recovery thing mentioned is an issue. I've been building CM for this device for nearly 2 months and have had no issues with TWRP being replaced.
Click to expand...
Click to collapse
Agreed. I was just about to post that too. Most custom ROMs remove the stock recovery so custom recoveries don't get overwritten.
Very cool ill try this tomorrow! Can you maybe add a section on how to find and add nice cherrypicks?
Regarding the recovery I added that in on the safe side. I know if you download the full stock cm12 from their website it does change the recovery and encrypt the device.
I will be adding a few more cherry picks at some stage, I am working on something rather cool at the minute.
Thanks for doing this. I've followed a few guides but every one wasn't quite correct. I can't wait to test this out soon.
- Aaron
Very well done Stephen! I read as many of these as I can and always learn something new. This is very well written and I hope all of us can add and help each other as we progress with the N6!:good:
Hey,
I have built AOSP for Nexus devices for a long time, but have yet to run into this issue.
When I run "brunch shamu", it fails, referancing generic "goldfish"? is that just a generic device name?
Here is the build process:
[email protected]:~/android$ source build/envsetup.sh
including device/moto/shamu/vendorsetup.sh
including device/generic/mini-emulator-x86_64/vendorsetup.sh
including device/generic/mini-emulator-armv7-a-neon/vendorsetup.sh
including device/generic/mini-emulator-mips/vendorsetup.sh
including device/generic/mini-emulator-arm64/vendorsetup.sh
including device/generic/mini-emulator-x86/vendorsetup.sh
including vendor/cm/vendorsetup.sh
including sdk/bash_completion/adb.bash
including vendor/cm/bash_completion/git.bash
including vendor/cm/bash_completion/repo.bash
[email protected]:~/android$ brunch shamu
including vendor/cm/vendorsetup.sh
Looking for dependencies
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=5.0.2
CM_VERSION=12-20150315-UNOFFICIAL-shamu
TARGET_PRODUCT=cm_shamu
TARGET_BUILD_VARIANT=userdebug
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
TARGET_CPU_VARIANT=krait
TARGET_2ND_ARCH=
TARGET_2ND_ARCH_VARIANT=
TARGET_2ND_CPU_VARIANT=
HOST_ARCH=x86_64
HOST_OS=linux
HOST_OS_EXTRA=Linux-3.16.0-31-generic-x86_64-with-Ubuntu-14.10-utopic
HOST_BUILD_TYPE=release
BUILD_ID=LRX22G
OUT_DIR=/home/npjohnson/android/out
============================================
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=5.0.2
CM_VERSION=12-20150315-UNOFFICIAL-shamu
TARGET_PRODUCT=cm_shamu
TARGET_BUILD_VARIANT=userdebug
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a-neon
TARGET_CPU_VARIANT=krait
TARGET_2ND_ARCH=
TARGET_2ND_ARCH_VARIANT=
TARGET_2ND_CPU_VARIANT=
HOST_ARCH=x86_64
HOST_OS=linux
HOST_OS_EXTRA=Linux-3.16.0-31-generic-x86_64-with-Ubuntu-14.10-utopic
HOST_BUILD_TYPE=release
BUILD_ID=LRX22G
OUT_DIR=/home/npjohnson/android/out
============================================
find: `src': No such file or directory
find: `src': No such file or directory
find: `src': No such file or directory
find: `src': No such file or directory
find: `src': No such file or directory
find: `src': No such file or directory
find: `src': No such file or directory
find: `src': No such file or directory
find: `src': No such file or directory
find: `src': No such file or directory
find: `src': No such file or directory
find: `src': No such file or directory
find: `src': No such file or directory
"ebtables is disabled on this build"
find: `dummy': No such file or directory
build/core/base_rules.mk:154: *** system/device/generic/goldfish/audio: MODULE.TARGET.SHARED_LIBRARIES.audio.primary.goldfish already defined by device/generic/goldfish/audio. Stop.
Not sure, haven't seen that error before. Have you added any extra mods into the rom? One of those could be causing the issue. It could also be an issue with CM12 its self. Some times they do add code in and it can cause errors.
I would try downloading source again and see if there is any difference.
Stephen said:
Not sure, haven't seen that error before. Have you added any extra mods into the rom? One of those could be causing the issue. It could also be an issue with CM12 its self. Some times they do add code in and it can cause errors.
I would try downloading source again and see if there is any difference.
Click to expand...
Click to collapse
Will do. I am building on Ubuntu 14.10. That should be OK to use correct? Fresh install, then followed steps in the OP.
npjohnson said:
Will do. I am building on Ubuntu 14.10. That should be OK to use correct? Fresh install, then followed steps in the OP.
Click to expand...
Click to collapse
Yes. Oh what setup are you using. Virtual Box or duel boot. I did have problems with Virtual box and switched to duel boot. Found it to be more stable.
Stephen said:
Yes. Oh what setup are you using. Virtual Box or duel boot. I did have problems with Virtual box and switched to duel boot. Found it to be more stable.
Click to expand...
Click to collapse
Dual boot.
Any idea why my builds come in at around 387MB but the official nightlies are ~443MB?

[GUIDE][HOW-TO][T819]Build your own LineageOS 15.1 for T819

Hello and welcome to my first try to write an HOW-TO, don't kill me for my epic skillz in that ^^
After a nice chat with @LuK1337 that weekend I was able to build my own LineageOS ROM for our beloved Tablet. It works very nice and thus I think it should be fine to pass my information over to you, but first:
If your tablet eats your cat after that, you are on YOUR OWN! It is NOT my fault and even less the fault of @LuK1337!!
What works:
- Everything the T813 LineageOS can do + working Vibration + LTE
What does not work:
- Phone audio
So, let's start:
First you have this nice howto for the T813: https://wiki.lineageos.org/devices/gts210vewifi/build which you follow down to and including the "Download the source code" step with two lil modifications:
Install the build packages -> I had to "apt-get install python-minimal", too to make it work on Ubuntu 17.10.
Initialize the LineageOS source repository -> Well, we don't want LOS 14.1, so the command we use here is:
Code:
repo init -u https://github.com/LineageOS/android.git -b staging/lineage-15.1
After you finished the repo sync, which takes AGES on slower internet connections, you really should follow two optional steps below:
https://wiki.lineageos.org/devices/gts210vewifi/build#turn-on-caching-to-speed-up-build
https://wiki.lineageos.org/devices/gts210vewifi/build#configure-jack (Especially needed if you have not that much RAM. I did not wanna listen to @LuK1337 telling me that the build EATS RAM for breakfast, but it's true! You NEED more than 12 GB of RAM even with that setting!!)
Next one is the following lines:
Code:
mkdir -p ./.repo/local_manifests
wget https://www.dropbox.com/s/72cb5jix08y9jkv/envsetup.sh?dl=1 -O ./picks
wget https://www.dropbox.com/s/0fknl8w7zl6buz2/roomservice.xml?dl=1 -O ./.repo/local_manifests/roomservice.xml
chmod +x ./picks
repo sync
This loads the device specific stuff you will need now and prepares a step we need later.
Some useful and badly needed pickings from @LuK1337 are added when you next run this command:
Code:
./picks
Now once you are done:
Code:
. build/envsetup.sh
ALLOW_MISSING_DEPENDENCIES=true brunch gts210velte
In theory we now can go to bed and check for a result in $OUT after it finished build after about 6-10 hours. There waits a nice install ZIP for TWRP in there.
Flash on a T819 with FORMATTED and thus useable /data partition. This can and HAS TO be done in TWRP, too. If the file laments about a wrong bootloader, you should update your tablet to most recent official 7.0 firmware first!
Maybe this is a first start for ppl trying to tinker with T819 and add even more things to it, like Phone audio. At least is was a nice odyssey and the result I got was perfect. Have fun with your track down to the crazy self builders ^^
P.S. If you want GAPPS, load em here: https://sourceforge.net/projects/unofficial-opengapps-8-1/
Wanna update? SURE ^^ But be sure your picks are the most recent above.
Code:
repo forall -c 'git am --abort ; git cherry-pick --abort ; git merge --abort ; git clean -fdx ; git reset --hard' ; repo sync -j30 --force-sync -f
./picks
Code:
. build/envsetup.sh
rm -rf out ; ALLOW_MISSING_DEPENDENCIES=true brunch gts210velte
Hello, new version ^^
Updates will be added here:
15.01.18:
If you have funny build problems indicating compiler suite problems... Update the platform tools. Fixes some funny problems with newer LOS builds.
And always be sure you have the most recent picks and roomservice.xml
14.01.18:
Still wanna tinker with your own build? I updated the manual making it waay smaller thx to recent changes.
08.01.18:
https://forum.xda-developers.com/tab-s2/orig-development/rom-lineageos-15-1-t3732074
https://forum.xda-developers.com/tab-s2/orig-development/rom-lineageos-15-1-t3732070
Have fun, did go on LuK1337 and others nerves and this is the result. Don't expect a full featured ROM though. Calling is a bit silent when you don't hear ppl and they don't you ^^
25.12.17:
Updated the link to LuK1337's picks to a new one disabling stuff not working on new checkouts anymore. Source is LuK1337 again ^^
Completely removed the after build zip editing by modifying another file and keeping the line uncommented-out in BoardConfig.mk. This way the whole file correctly checks for the CORRECT bootloaders. This way the build.prop file in /system on the device is correct, too.
Added link to unofficial GAPPS for ppl who don't want to tinker inside GAPPS zip files.
Started some tinkering with RIL. Results up to now: ZIP file +30 MB aka LOS has all stuff built needed for telephony. Working? Naaah ^^
and where is the link to test the build
ronald_w. said:
and where is the link to test the build
Click to expand...
Click to collapse
There is none. This is a manual how to make it yourself. If I ever manage to get RIL working... MAYBE I will upload one or two builds.
emuandco said:
There is none. This is a manual how to make it yourself. If I ever manage to get RIL working... MAYBE I will upload one or two builds.
Click to expand...
Click to collapse
this is also my problem
ronald_w. said:
this is also my problem
Click to expand...
Click to collapse
So you made your own build already? Working fine (except RIL)?
emuandco said:
So you made your own build already? Working fine (except RIL)?
Click to expand...
Click to collapse
for now not working, build process without errors but the kernel will not boot the device (lineage 15.0 with other build tree) , new build is 8%
No need to build it at all. It is enough to just edit installer script. Change gts210wifi to gts20lte and delete assert for BL. It works perfect, I tried, I use it. And of courese to use newset twrp 3.2.
ivanox1972 said:
No need to build it at all. It is enough to just edit installer script. Change gts210wifi to gts20lte and delete assert for BL. It works perfect, I tried, I use it. And of courese to use newset twrp 3.2.
Click to expand...
Click to collapse
You know that we are talking about the NON Exynos devices, so you? so it is gts210VEwifi.
And even if it does, lucky you. I don't like the idea to use defconfigs for another device on my tablet.
EDIT: Current status regarding RIL... After hours with LuK1337 and his skills and code source juggling... Daemon runs, SIM detected, IMEI detected, network sorta... runs? This means SMS receiving runs and not much more for now. Still investigating.
Of courese, I forget ve to write, my lapsus. Otherwise it works perfect. They use same board.
But, if you make RIL there, it diffferent story. Every credit to you, if you need someone to test those builds I am here
ivanox1972 said:
Of courese, I forget ve to write, my lapsus. Otherwise it works perfect. They use same board.
But, if you make RIL there, it diffferent story. Every credit to you, if you need someone to test those builds I am here
Click to expand...
Click to collapse
Well, I would prefer someone knowing more of that stuff helping me to fix the remaining bugs. I even went down the pipe to try to disassemble the original libril.so but no big results from that... Right now you have all phone stuff included and thus for example can install WhatsApp again + GAPPS install the DialerFramework and Google Dialer. You get IMEI information, Baseband Information, SIM Phone Number Information and you can receive SMS, but no calling, no SMS sending and no data network works for now.
Current logcat: https://hastebin.com/iguvaxagas.xml
Thanks for hard work, I'll be very happy to have full oreo Los on tab s2!
Well I've been fiddling all day to get it to work, ubuntu 17.* have been removed from the main ubuntu site, and using the the cdimage.ubuntu locations gave me the install iso's but ended in not properly working install repos of the needed apps.
So went for 16.04 after several attempts, every installs fine, setted everything up according the tutorials in the OP and checking my old info for setting up ubuntu VM (or full pc's) what i did in the past, those where the same since my last succesfull setting up build machines.
but in the end I had to use a "repo sync -f --force-sync" instead of repo sync before ./picks, otherwise it ended up with a ton of errors in running ./picks.
After that that being running good, and finally comming to build I end up after 50 to 60 seconds in
Code:
[44/44] bootstrap /home/ragebuilder/android/lineage/out/soong/.minibootstrap/build.ninja.in
[4/4] /home/ragebuilder/android/lineage/out/soong/.bootstrap/bin/minibp /home/ragebuilder/android/lineage/out/soong/.bootstrap/build.ninja
[862/863] glob vendor/qcom/opensource/interfaces/display/config/1.0/Android.bp
[56/56] /home/ragebuilder/android/lineage/out/soong/.bootstrap/bin/soong_build /home/ragebuilder/android/lineage/out/soong/build.ninja
/home/ragebuilder/android/lineage/out/build-lineage_gts210vewifi.ninja is missing, regenerating...
[527/1117] including ./hardware/qcom/media-caf/msm8952/Android.mk ...
./hardware/qcom/media-caf/msm8952/Android.mk:4: warning: target list is : msm8952
[1117/1117] including ./vendor/samsung/zerofltexx/Android.mk ...
build/core/Makefile:34: warning: overriding commands for target `/home/ragebuilder/android/lineage/out/target/product/gts210vewifi/system/lib64/libgps.utils.so'
build/core/base_rules.mk:391: warning: ignoring old commands for target `/home/ragebuilder/android/lineage/out/target/product/gts210vewifi/system/lib64/libgps.utils.so'
build/core/Makefile:34: warning: overriding commands for target `/home/ragebuilder/android/lineage/out/target/product/gts210vewifi/system/lib64/libloc_core.so'
build/core/base_rules.mk:391: warning: ignoring old commands for target `/home/ragebuilder/android/lineage/out/target/product/gts210vewifi/system/lib64/libloc_core.so'
build/core/Makefile:34: warning: overriding commands for target `/home/ragebuilder/android/lineage/out/target/product/gts210vewifi/system/lib64/libloc_eng.so'
build/core/base_rules.mk:391: warning: ignoring old commands for target `/home/ragebuilder/android/lineage/out/target/product/gts210vewifi/system/lib64/libloc_eng.so'
[ 99% 1585/1586] glob vendor/qcom/opensource/interfaces/*/Android.bp
ninja: error: '/home/ragebuilder/android/lineage/out/target/common/obj/JAVA_LIBRARIES/org.cyanogenmod.platform.internal_intermediates/classes.jack', needed by '/home/ragebuilder/android/lineage/out/target/common/obj/APPS/AdvancedDisplay_intermediates/with-local/classes.dex', missing and no known rule to make it
18:57:35 ninja failed with: exit status 1
#### failed to build some targets (54 seconds) ####
Tried resetting up the build VM now 6 times to find anything I could've done wrong, but cant find any, just end up at the same manner with this error.
Also made sure that Jack is setup properly ( https://forum.xda-developers.com/android/software/aosp-cm-los-how-to-fix-jack-server-t3575179 ) and jack starts and stops, shouldn't that also solve the ninja problem? Soz my last home build was nearly 2 years ago and a lot could have been changed, but normally google is my friend to fix it, not this time..
Has anyone some advice what to look at?
I have removed in hardware/samsung/AdvancedDisplay/Android.mk the line org.cyanogenmod.platform.internal and the directory /hardware/samsung/AdvancedDisplay/src/com/cyanogenmod/. (LineageOS 15.0)
Build is complete,
[100% 84744/84744] build bacon
Package Complete: /home/ronald/android/system/out/target/product/gts210velte/lineage-15.0-20180106_214317-UNOFFICIAL-gts210velte.zip
make: Verzeichnis „/home/ronald/android/system“ wird verlassen
#### make completed successfully (03:05:39 (hh:mm:ss)) ####
Click to expand...
Click to collapse
but for me this rom doesn't work properly --> boot stuck with sim card not detected
ronald_w. said:
I have removed in hardware/samsung/AdvancedDisplay/Android.mk the line org.cyanogenmod.platform.internal and the directory /hardware/samsung/AdvancedDisplay/src/com/cyanogenmod/. (LineageOS 15.0)
Build is complete,
but for me this rom doesn't work properly --> boot stuck with sim card not detected
Click to expand...
Click to collapse
That got me just a step furter
14:07:50 Build configuration changed: "" -> "lineage_gts210vewifi-userdebug", forcing installclean
ninja: warning: bad deps log signature or version; starting over
Click to expand...
Click to collapse
now it is waiting time agian....
But thanx for the tip!!!
RagingHarry said:
That got me just a step furter
now it is waiting time agian....
But thanx for the tip!!!
Click to expand...
Click to collapse
I have no clue what you did wrong or why you tinker with LOS 15 with a manual for 15.1, but... check post #2 and load your ROM from there.
emuandco said:
I have no clue what you did wrong or why you tinker with LOS 15 with a manual for 15.1, but... check post #2 and load your ROM from there.
Click to expand...
Click to collapse
That 15.0 was the person I quoted but that step was a test to see if it would hold further, but also then it ended up in errors and a crash of the build.
I did everything with copy pasting from the guide in OP and the linked pages, why it went wrong for me I still don't understand, have been making homebuilds since my Galaxy S2 and always got it to work.
But now you made the new LOS threads I will stick to that for now, and maybe try later again.
Thnx for your efforts and now the Unofficial support start for the T819!
RagingHarry said:
That 15.0 was the person I quoted but that step was a test to see if it would hold further, but also then it ended up in errors and a crash of the build.
I did everything with copy pasting from the guide in OP and the linked pages, why it went wrong for me I still don't understand, have been making homebuilds since my Galaxy S2 and always got it to work.
But now you made the new LOS threads I will stick to that for now, and maybe try later again.
Thnx for your efforts and now the Unofficial support start for the T819!
Click to expand...
Click to collapse
Sure, but beware, we have now device repos for gts210velte and gts28velte ^^
So roomservicexml more should look like this now:
Code:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project name="gts210vewifi-dev/proprietary_vendor_samsung" path="vendor/samsung" remote="github" revision="lineage-15.1" />
<project name="LineageOS/android_device_qcom_common" path="device/qcom/common" remote="github" revision="staging/lineage-15.1" />
<project name="LineageOS/android_hardware_samsung" path="hardware/samsung" remote="github" revision="staging/lineage-15.1" />
<project name="LineageOS/android_hardware_sony_timekeep" path="hardware/sony/timekeep" remote="github" revision="lineage-15.0" />
<project name="gts210vewifi-dev/android_device_samsung_msm8976-common" path="device/samsung/msm8976-common" remote="github" revision="lineage-15.1" />
<project name="gts210vewifi-dev/android_device_samsung_gts210velte" path="device/samsung/gts210velte" remote="github" revision="lineage-15.1" />
<project name="gts210vewifi-dev/android_device_samsung_gts28velte" path="device/samsung/gts28velte" remote="github" revision="lineage-15.1" />
<project name="gts210vewifi-dev/android_kernel_samsung_msm8976" path="kernel/samsung/msm8976" remote="github" revision="lineage-15.1" />
<project name="LineageOS/android_packages_apps_Updater" path="packages/apps/Updater" remote="github" />
</manifest>
And brunch has to be started with that hw id, too:
Code:
ALLOW_MISSING_DEPENDENCIES=true brunch gts210velte
Code:
ALLOW_MISSING_DEPENDENCIES=true brunch gts28velte
Feel free to try it, if it works, tell me. Not much time these days.
Thnx!
Gonna give it a try in a few days when I have some free time.
Feel free to try it, if it works, tell me. Not much time these days.
Click to expand...
Click to collapse
[ 90% 83198/92320] Building with Jack: /home/ronald/android/syst...mmon/obj/JAVA_LIBRARIES/services.core_intermediates/classes.jack
FAILED: /home/ronald/android/system/out/target/common/obj/JAVA_LIBRARIES/services.core_intermediates/classes.jack
ERROR: /home/ronald/android/system/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java:260.8: The import org.lineageos.internal.util.ActionUtils cannot be resolved
ERROR: /home/ronald/android/system/frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java:2017.17: ActionUtils cannot be resolved
[ 91% 84356/92348] Building with Jack: /home/ronald/android/syst...get/common/obj/APPS/Updater_intermediates/with-local/classes.dex
ninja: build stopped: subcommand failed.
19:24:06 ninja failed with: exit status 1
#### failed to build some targets (02:35:28 (hh:mm:ss)) ####

[NEWS] Linux 4.19 to natively support Samsung Galaxy S

Those who read Phoronix might already know, but Olof Johansson from kernel.org is working on official support for Samsung Galaxy S smartphone.
Most probably, for XDA, they are a bit late to the party, but it still might be fun for tinkerers who'd want to run a Linux distro (any dev still here?).
Now, I'm not an owner/user of I9000 anymore (it was broken by a child I borrowed it to, just for 24h [driven over by bike - WTF], and lies in the closet, due to the sentiment - I've learned a lot of Linux stuff with this phone and I can't part with it), but I'm moved by the fact that there will be official support. This feels so awesome that I'm sad my old brick isn't working anymore ?
I can see the place isn't as lively as I remember, but if there any of you left, then best of luck playing with it ?
Source:
https://www.phoronix.com/scan.php?page=news_item&px=Samsung-Galaxy-S-DT-Linux-4.19
https://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc.git/commit/?h=for-next&id=85b40cf3a868361fed3122a503469f3be7a38b97
PS. Graphics device would still be a problem (SGX540, if I remember?). It's blobbed, so it sucks.
devloz said:
Those who read Phoronix might already know, but Olof Johansson from kernel.org is working on official support for Samsung Galaxy S smartphone.
Most probably, for XDA, they are a bit late to the party, but it still might be fun for tinkerers who'd want to run a Linux distro (any dev still here?).
Now, I'm not an owner/user of I9000 anymore (it was broken by a child I borrowed it to, just for 24h [driven over by bike - WTF], and lies in the closet, due to the sentiment - I've learned a lot of Linux stuff with this phone and I can't part with it), but I'm moved by the fact that there will be official support. This feels so awesome that I'm sad my old brick isn't working anymore
I can see the place isn't as lively as I remember, but if there any of you left, then best of luck playing with it
Source:
https://www.phoronix.com/scan.php?page=news_item&px=Samsung-Galaxy-S-DT-Linux-4.19
https://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc.git/commit/?h=for-next&id=85b40cf3a868361fed3122a503469f3be7a38b97
PS. Graphics device would still be a problem (SGX540, if I remember?). It's blobbed, so it sucks.
Click to expand...
Click to collapse
Giving proper credits is very important.
Obviously, when you submit patches to the linux kernel, somebody (from the kernel's team) has to review them, and merge them if they look good.
That 'somebody' in this case is Olof Johansson. The process is called code-review.
The actual developers are PabloPL and @xc-racer99
source code: https://github.com/PabloPL/linux
further proof: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/log/?qt=grep&q=paweł+chmiel
status: https://github.com/PabloPL/linux/wiki (this is slightly outdated, you can follow the github issues for current status)
P.S: Graphics won't be a problem as desktop environments like MATE and xfce work well even with software rendering.
Thanks for putting this up here, it's possible someone else might notice and help out There's also an associated u-boot port at https://github.com/xc-racer99/u-boot-galaxys4g/wiki
If anyone is interested, I can give instructions on how to boot a basic Debian or Arch Linux installation.
Yep, that's correct that the SGX 540 is blobbed. There's an in-kernel driver, but it's mostly a shim for the proprietary blob which implements the windowing system (surfaceflinger for Android, X for Linux). It would probably be possible to re-used the Pandaboard X window system blobs, but 3D acceleration is a ways off.
xc-racer99 said:
If anyone is interested, I can give instructions on how to boot a basic Debian or Arch Linux installation.
Click to expand...
Click to collapse
Yes, please. That would be very useful!
MYEUHD said:
Yes, please. That would be very useful!
Click to expand...
Click to collapse
Alright, here goes. This is assuming you have all data backed up to somewhere safe.
1) Clone the u-boot port from https://github.com/xc-racer99/u-boot-galaxys4g/ - the v2018.05-aries branch is probably best
Code:
git clone https://github.com/xc-racer99/u-boot-galaxys4g -b v2018.05-aries
cd u-boot-galaxys4g
2) Build u-boot:
Code:
export ARCH=arm CROSS_COMPILE=/path/to/arm/cc
make s5p_aries_defconfig
make -j6
3) The resulting u-boot.bin is the u-boot file to flash:
Code:
heimdall flash --KERNEL u-boot.bin
4) Clone the linux kernel. You can use a variety of branches - linus' branch (aka v4.19 stable), any of the ones from https://github.com/PabloPL/linux/branches - note that I recommend the for-upstream/aries-patches-v2 branch as a base and cherry-pick the commits from the other branches for peripherals you want to use
Code:
git clone https://github.com/PabloPL/linux -b for-upstream/aries-patches-v2
cd linux
5) Build linux. First, make sure that the correct debug uart is defined in the defconfig
Code:
sed -i -- 's/CONFIG_DEBUG_S3C_UART1/CONFIG_DEBUG_S3C_UART2/g' arch/arm/configs/s5pv210_defconfig
export ARCH=arm CROSS_COMPILE=/path/to/arm/cc
make s5pv210_defconfig
make
6) Create the u-boot uImage. Replace fascinate4g.dtb with galaxys.dtb if not using an SGH-T959V/SGH-T959W/SGH-T959P. Note that if not using the i9000 or one of the above models, there could be some minor incompatabilities.
Code:
cat arch/arm/boot/zImage arch/arm/boot/dts/s5pv210-fascinate4g.dtb > zImage-dtb
mkimage -A arm -T kernel -a 30008000 -e 30008000 -O linux -d zImage-dtb -C none uImage
7) Flash the u-boot boot image. This could also be placed in a different place that u-boot knows how to boot from (mmc partition 1/2, sd card partition 1/2)
Code:
heimdall flash --RECOVERY uImage
---------- Post added at 09:45 AM ---------- Previous post was at 09:26 AM ----------
Installing a Linux distro
1) Format the first partition on your SD card as a Linux-compatible filesystem (eg ext4)
2) Arch Linux
a) Download the ARMv7 multi-platform zip from https://archlinuxarm.org/about/downloads
b) Extract the ArchLinuxARM-armv7-latest.tar.gz to the first partition on your SD card
3) Debian
a) From a Debian host, install debootstrap and qemu-arm-static
Code:
# apt install qemu-arm-static debootstrap
b) Bootstrap the system
Code:
# mkdir debian_armhf_stretch
# qemu-debootstrap --arch armhf stretch debian_armhf_stretch http://deb.debian.org/debian/
c) Enter the chroot and configure it
Code:
# chroot debian_armhf_stretch
i) Set password
Code:
passwd <your new password for user root here>
ii) Install any desired packages, eg xfce4
Code:
apt install xfce4
d) Exit the chroot
Code:
exit
e) Copy the contents of debian_armhf_stretch to your SD card. Alternatively, you could have run qemu-debootstrap to setup directly on the SD card
4) Stick your SD card into your phone and boot!
Arch Linux is a minimal, non-GUI install while Debian can be customized as desired. I personally use Debian. Note that if using some things such as wifi or bluetooth, you may need some firmware and/or some of the kernel modules to be copied to their required places.
Update
The aries-patches-v2 branch doesn't have the touchscreen enabled. You'll need to merge the commits from https://github.com/PabloPL/linux/commits/for-upstream/atmel-mxt-fixes
You'll also probably want to follow the instructions in the answers in https://askubuntu.com/questions/369621/how-to-get-the-onscreen-keybord-appear-on-login to install an on-screen keyboard. Make sure when you're running the commands that you're in the debian chroot.
Do I need a serial console to enter the password and login?
Edit: I disabled the password login by following https://superuser.com/questions/969923/automatic-root-login-in-debian-8-0-console-only#970013
But still, debian doesn't boot to xfce4.
Wich dependancies is required for building with ubuntu? The command make -j6 give me 2 errors
MYEUHD said:
Do I need a serial console to enter the password and login?
Edit: I disabled the password login by following https://superuser.com/questions/969923/automatic-root-login-in-debian-8-0-console-only#970013
But still, debian doesn't boot to xfce4.
Click to expand...
Click to collapse
Shouldn't need a serial console to login, although that's how I've been doing it lately. What's the last screen you see? Is it flashing a few different ones (I think this was just when DMA was enabled, I need to check when I get the chance though) or just stuck at the lightdm screen? Come to think of it, the aries-patches-v2 branch doesn't have the touchscreen enabled, so you'll need to manually merge the patches from the branch https://github.com/PabloPL/linux/commits/for-upstream/atmel-mxt-fixes and then you'll need to enable the on-screen keyboard based on the answers in https://askubuntu.com/questions/369621/how-to-get-the-onscreen-keybord-appear-on-login
laharl_22 said:
Wich dependancies is required for building with ubuntu? The command make -j6 give me 2 errors
Click to expand...
Click to collapse
You should just need an ARM cross compiler (eg gcc-6-arm-linux-gnueabihf-base) and possibly build-essential. U-Boot does need a relatively new cross compiler IIRC so the Android GCC 4.8/4.9 based ones probably don't work.
Exactly the sames errors after installing the libs im on ubuntu 18.04 lts amd64 the error text
scripts/kconfig/conf --silentoldconfig Kconfig
CHK include/config.h
CFG u-boot.cfg
GEN include/autoconf.mk.dep
GEN include/autoconf.mk
CHK include/config/uboot.release
CHK include/generated/timestamp_autogenerated.h
UPD include/generated/timestamp_autogenerated.h
CHK include/config.h
CFG u-boot.cfg
CHK include/generated/version_autogenerated.h
CC lib/asm-offsets.s
CC arch/arm/lib/asm-offsets.s
cc1: error: bad value (‘armv5’) for ‘-march=’ switch
cc1: note: valid arguments to ‘-march=’ switch are: nocona core2 nehalem corei7 westmere sandybridge corei7-avx ivybridge core-avx-i haswell core-avx2 broadwell skylake skylake-avx512 bonnell atom silvermont slm knl x86-64 eden-x2 nano nano-1000 nano-2000 nano-3000 nano-x2 eden-x4 nano-x4 k8 k8-sse3 opteron opteron-sse
---------- Post added at 07:37 PM ---------- Previous post was at 06:44 PM ----------
how to fix the bad value please ?
---------- Post added at 08:18 PM ---------- Previous post was at 07:37 PM ----------
anyone can compile tested with 3 version of cross compiler always the sames error
laharl_22 said:
Exactly the sames errors after installing the libs im on ubuntu 18.04 lts amd64 the error text
scripts/kconfig/conf --silentoldconfig Kconfig
CHK include/config.h
CFG u-boot.cfg
GEN include/autoconf.mk.dep
GEN include/autoconf.mk
CHK include/config/uboot.release
CHK include/generated/timestamp_autogenerated.h
UPD include/generated/timestamp_autogenerated.h
CHK include/config.h
CFG u-boot.cfg
CHK include/generated/version_autogenerated.h
CC lib/asm-offsets.s
CC arch/arm/lib/asm-offsets.s
cc1: error: bad value (‘armv5’) for ‘-march=’ switch
cc1: note: valid arguments to ‘-march=’ switch are: nocona core2 nehalem corei7 westmere sandybridge corei7-avx ivybridge core-avx-i haswell core-avx2 broadwell skylake skylake-avx512 bonnell atom silvermont slm knl x86-64 eden-x2 nano nano-1000 nano-2000 nano-3000 nano-x2 eden-x4 nano-x4 k8 k8-sse3 opteron opteron-sse
---------- Post added at 07:37 PM ---------- Previous post was at 06:44 PM ----------
how to fix the bad value please ?
---------- Post added at 08:18 PM ---------- Previous post was at 07:37 PM ----------
anyone can compile tested with 3 version of cross compiler always the sames error
Click to expand...
Click to collapse
Doesn't look like you've properly setup the cross compiler. Have you run
Code:
export ARCH=arm CROSS_COMPILE=</path/to/cc>
where </path/to/cc> is the arm cross compiler toolchain? Note that in my case (Debian Stretch) that is /usr/bin/arm-linux-gnueabi- note that arm-linux-gnueabi- part (including the dash) are required, so the actual gcc path would be /usr/bin/arm-linux-gnueabi-gcc
The error you're getting shows you're trying to use a x86 toolchain to build for an ARM machine.
xc-racer99 said:
Shouldn't need a serial console to login, although that's how I've been doing it lately. What's the last screen you see? Is it flashing a few different ones (I think this was just when DMA was enabled, I need to check when I get the chance though) or just stuck at the lightdm screen? Come to think of it, the aries-patches-v2 branch doesn't have the touchscreen enabled, so you'll need to manually merge the patches from the branch https://github.com/PabloPL/linux/commits/for-upstream/atmel-mxt-fixes and then you'll need to enable the on-screen keyboard based on the answers in https://askubuntu.com/questions/369621/how-to-get-the-onscreen-keybord-appear-on-login.
Click to expand...
Click to collapse
Lightdm wasn't even showing up, all I got was the same non-GUI login that you'd find in Arch.
Surprisingly, when I set autologin-guest to true in lightdm's configuration, it shows up and I can type my username and password to enter xfce4 (using on-screen keyboard).
Thank you for the instructions!
Edit: I just disabled autologin-guest to confirm the issue. Yet, lightdm showed up.
Very wierd...
Edit2: Check the following post for the solution.
If someone is having issues with Lightdm e.g getting a non-GUI login screen, or the phone looping between a black screen (~3s) and u-boot's graphical menu(~0.5s) instead of showing Lightdm,
type the following in the Debian chroot:
Code:
dpkg-reconfigure lightdm
About touchscreen patches
It turns out that those patches (from for-upstream/atmel-mxt-fixes) are not needed to enable touchscreen on Aries phones.
Just look here https://github.com/PabloPL/linux/co...7ff#diff-a55548a61205e9ebe52d79c1251eb46cR361
So like @xc-racer99 said, the best will be to use for-upstream/aries-patches-v2 branch
About compilation problems:
You can try to take toolchain from https://releases.linaro.org/components/toolchain/binaries/latest/arm-linux-gnueabihf/ (i'm using it during development on my ubuntu 16.04).
anyone have the compiled files please?i have tested all i have command not found on cross compiler
laharl_22 said:
anyone have the compiled files please?i have tested all i have command not found on cross compiler
Click to expand...
Click to collapse
Frankly, and with no offense meant, the state of the project is such that if you are unable to compile it on your own, then you probably shouldn't be running it as the potential for messing up your device and hard-bricking it is relatively high (ie I screwed up once and had to apply the unbrickable mod on my device to save it). As well, it's only really useful right now as a development project for someone with time on their hands
If it ever gets to point where it becomes usable, precompiled binaries with instructions on how to flash them will be provided. Don't hold your breath on getting to this point soon (or maybe even ever...)

Categories

Resources