[Q] Compiling kernel on Ubuntu 12.04 - Vibrant Q&A, Help & Troubleshooting

So i havent worked on a kernel in a while and decided id start workin on one again. Well I recently updated to 12.04 lts and no changes to my old source I just did a test compile and it wont boot. Same toochain, source, ramdisk, etc.
Is there some sort of issue with compiling on 12.04?

guess im on my own on this one :/

Hi, I have faced the same problem with Linux Mint 13 (based off Ubuntu 12.04).
These commands make the kernel able to boot for me :
Code:
sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 libgl1-mesa-dev g++-multilib mingw32 openjdk-6-jdk tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386
Code:
[FONT=Times New Roman]sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so[/FONT]
The second one wasn't required for me but it is mentioned on android website.
http://source.android.com/source/initializing.html

Related

[ GUIDE ] How to Configure Ubuntu 12.10 to Build Android (All Variants)

--- copied with permission from nathanpfry.com ---​
Initializing a fresh Android Build Environment in Ubuntu 12.10 64-bit sucks, right? The instructions at the aosp page are outdated at best, wrong at worst. Near as I can tell, they try to have you install 2 JDKs, the first one not even being the correct link for Quantal Quetzal, and the second being OpenJDK. Which _might_ work. But iiiiiiii dunno about all that, I'd rather have Oracle's official stamp when it comes to building for Android.
Currently most of the guides are up to 12.04 LTS, which is fine and dandy, but being on the cutting edge is nice too. Plus, I don't think I've seen anyone aggregate the directions in this order, for the correct official JDK and everything just right for building happiness.
This guide applies to Ubuntu 12.10 Quantal Quetzal 64 bit. It might work for 12.04 too, but *shrug*. Also, PAY CLOSE ATTENTION when to use "sudo" and when to not. It can make things funky if you do something as root that you shouldn't.
Much thanks goes out to Google, ProTekk, Canonical, and everyone else that I read a random paragraph here and snippet there.
First, let's set up the correct JDK.
Most of you, if not all, probably have some kind of wrong Java installed. Sad panda.
Let's get rid of that. Copy and paste this into a Terminal window:
Code:
sudo apt-get purge openjdk-\* icedtea-\* icedtea6-\*
Banish the OpenJDK! If you must keep it, it's possible. But I'm not going to tell you how to do it. I don't want any chance of confusion or mistake.
Back to the Terminal. Copypasta the following:
Code:
sudo add-apt-repository ppa:webupd8team/java
This will add the correct PPA to your system for updated builds of Java 6 JDK that are compatible with 12.10. No more unrecognized Java version errors! Yay! And it's self updating, so you don't have to redownload binaries everytime they release a new version.
Next, we actually need to install the package. More copypasta:
Code:
sudo apt-get update && sudo apt-get install oracle-java6-installer
Follow the onscreen instructions. You have to Accept the Licensing Agreement or whatever. Hopefully no human centipede clauses. Once that is completed successfully, you will have to restart any open browsers with Java content for it to display correctly.
To make sure the correct version of Java is activated, run the following at the Terminal prompt:
Code:
java -version
You should see something like the following:
java version "1.6.0_37"
Java(TM) SE Runtime Environment (build 1.6.0_37-b06)
Java HotSpot(TM) 64-Bit Server VM (build 20.12-b01, mixed mode)
Ok, back to a fresh Terminal prompt. Time for installing the guts to build stuff in Ubuntu:
Code:
sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev zlib1g-dev:i386 libc6-dev lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 lib32z-dev libgl1-mesa-glx:i386 libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc readline-common libreadline6-dev libreadline6 lib32readline-gplv2-dev libncurses5-dev lib32readline5 lib32readline6 libreadline-dev libreadline6-dev:i386 libreadline6:i386 bzip2 libbz2-dev libbz2-1.0 libghc-bzlib-dev lib32bz2-dev libsdl1.2-dev libesd0-dev squashfs-tools pngcrush schedtool libwxgtk2.8-dev python
And we wait. Don't worry, this isn't the crazy downloading part just yet.
When that is done, do this:
Code:
sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
That's probably it on the package side of things. Probably.
You guessed it, time for more Terminal. This really is the easiest way, seriously. And it's totally worth it when you're basking in the glory of a bunch of people on XDA.
The binary for repo will let you talk to git servers and download all that precious source code. That second part after the && allows it to be executable:
Code:
mkdir ~/bin && curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo && chmod a+x ~/bin/repo
Use your favorite text editor to open ~/.bashrc
I like nano:
Code:
sudo nano ~/.bashrc
At the very bottom, add the following line:
Code:
export PATH=~/bin:$PATH
Save it. In nano that would be Ctrl-O and then Enter. Then Ctrl-X to exit back to a prompt. Restart bash:
Code:
source ~/.bashrc
Navigate to where you would like to store the Android source code. The directions below will make it in your home folder, but if you have limited space, you may want to create it somewhere else. Faster is better, ie SSD would be best, USB external is unusable. Here we go:
Code:
mkdir ~/android
Code:
cd ~/android
Now you're going to initialize the repo. Here's where you decide the flavor of Android you want to build for, ie AOKP, CyanogenMod, AOSP etc. The following, for the purposes of this tutorial, will initialize for AOKP:
Code:
repo init -u git://github.com/AOKP/platform_manifest.git -b jb
Almost there. Last step, but it's a doozy. You're going to get the source. Prepare yourself, mere mortal. 10+ GB of downloading await you. Don't worry, it's automated. Go to sleep. Eat something. Perhaps you have heard of this new thing the kids are doing called "going outside"? Yeah, I didn't think so. Me neither. Hey everyone, it's a terminal:
Code:
repo sync
Check back periodically every hour or so. It really all depends on how fast your internet connection is.
That should be everything. Now you're ready to build Android the right way. Luck! If this guide helped you, please say Thanks.
Problem
When I do the command
$ sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev zlib1g-dev:i386 libc6-dev lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 lib32z-dev libgl1-mesa-glx:i386 libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc readline-common libreadline6-dev libreadline6 lib32readline-gplv2-dev libncurses5-dev lib32readline5 lib32readline6 libreadline-dev libreadline6-dev:i386 libreadline6:i386 bzip2 libbz2-dev libbz2-1.0 libghc-bzlib-dev lib32bz2-dev libsdl1.2-dev libesd0-dev squashfs-tools pngcrush schedtool libwxgtk2.6-dev python
My prompt returns
Reading package lists... Done
Building dependency tree
Reading state information... Done
Note, selecting 'lib32z1-dev' instead of 'lib32z-dev'
E: Unable to locate package zlib1g-dev
E: Unable to locate package libx11-dev
E: Unable to locate package libreadline6-dev
E: Unable to locate package libgl1-mesa-glx
E: Unable to locate package libreadline6-dev
E: Unable to locate package libreadline6
E: Unable to locate package libwxgtk2.6-dev
E: Couldn't find any package by regex 'libwxgtk2.6-dev'
All I did was copy and paste and it won't work. Any suggestions?
One of the straightforward guides I've ever seen. It's quick, easy and problem-free
Also how about your device config?
And with make use: make -j`grep 'processor' /proc/cpuinfo | wc -l`
64-bits
Well to anyone else going through this make sure you get the 64-bit ISO, not the default 32 bit one off the desktop page.
so i am trying to do this
problem is right after installing java when i go to install all the stuff needed to build stuff...alot of the packages are not available...starting with ia32-libs and alot of the other libs
on ubuntu 12.10 32bit on a vm
tnpapadakos said:
so i am trying to do this
problem is right after installing java when i go to install all the stuff needed to build stuff...alot of the packages are not available...starting with ia32-libs and alot of the other libs
on ubuntu 12.10 32bit on a vm
Click to expand...
Click to collapse
Those libs are so 64bit can run 32bit tools. From what I'm getting, a 64bit system is required to compile JB. I'm not entirely convinced yet, more like hoping though
DNRDustin said:
Those libs are so 64bit can run 32bit tools. From what I'm getting, a 64bit system is required to compile JB. I'm not entirely convinced yet, more like hoping though
Click to expand...
Click to collapse
and with 64 bit im running into other issues...i follow the directions and then stuff like file does not exist happens...stupid stuff...this should not be that hard or mysterious...got me to thinking a slip-streamed ubuntu install disk with everything one needs to set up the environment built right in would be awesome
tnpapadakos said:
and with 64 bit im running into other issues...i follow the directions and then stuff like file does not exist happens...stupid stuff...this should not be that hard or mysterious...got me to thinking a slip-streamed ubuntu install disk with everything one needs to set up the environment built right in would be awesome
Click to expand...
Click to collapse
dell is working on a github project for something similar to this. users will *supposedly* be able to easily replicate build environments according to a profile-type system.
anyway, if you want to PM me i can try to help you out. i understand the frustration, it's why i wrote the guide &&
good luck everyone!
Peteragent5 said:
One of the straightforward guides I've ever seen. It's quick, easy and problem-free
Also how about your device config?
And with make use: make -j`grep 'processor' /proc/cpuinfo | wc -l`
Click to expand...
Click to collapse
Don't use make! Use mka! I forgot to add this part as I mentioned it in another post somewhere on xda &&
Ok so, the reasoning is, mka is a streamlined version of make that will utilize a job handler automatically to speed up your build process.
So, your build string becomes
Code:
source build/ensetup.sh && lunch yourdevicenamehere && mka yourdevicenamehere
Furthermore, if you're building for Cyanogenmod or a cm-based ROM, use brunch. It does optimizations after the build process with a tool called "squisher" that is not normally called for with lunch/mka. Thusly,
Code:
source build/ensetup.sh && brunch yourdevicehere
If you want to read about why, I recommend checking out this dude over here
thanks for reminding me!
E: Unable to locate package libwxgtk2.6-dev
E: Couldn't find any package by regex 'libwxgtk2.6-dev'
Got this but it turned out not to matter. Also needed to install sharutils. Thanks for this though, it really helped!
etoD said:
E: Unable to locate package libwxgtk2.6-dev
E: Couldn't find any package by regex 'libwxgtk2.6-dev'
Got this but it turned out not to matter. Also needed to install sharutils. Thanks for this though, it really helped!
Click to expand...
Click to collapse
it's libwxgtk2.8-dev nao
™
droidjam said:
it's libwxgtk2.8-dev nao
™
Click to expand...
Click to collapse
Thank you. By the way, when running
Code:
sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev zlib1g-dev:i386 libc6-dev lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 lib32z-dev libgl1-mesa-glx:i386 libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc readline-common libreadline6-dev libreadline6 lib32readline-gplv2-dev libncurses5-dev lib32readline5 lib32readline6 libreadline-dev libreadline6-dev:i386 libreadline6:i386 bzip2 libbz2-dev libbz2-1.0 libghc-bzlib-dev lib32bz2-dev libsdl1.2-dev libesd0-dev squashfs-tools pngcrush schedtool libwxgtk2.8-dev python
I got
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
build-essential : Depends: dpkg-dev (>= 1.13.5) but it is not going to be installed
g++-multilib : Depends: gcc-multilib (>= 4:4.7.2-1ubuntu2) but it is not going to be installed
Depends: g++-4.7-multilib (>= 4.7.2-1~) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
Click to expand...
Click to collapse
And had to run this first:
Code:
sudo apt-get -f install build-essential
What I want to know is why are we supposed to use 64bit instead if 32bit?
Cause my comp supports 32bit fine but runs a bit slower with 64bit
Sent from my SAMSUNG-SGH-T989 using xda app-developers app
Jellybean requires 64bit to build properly
Sent from my GT-N7000 using XDA Premium HD app
I tryed using Ubuntu 64bit and my comp crashed :/
Sent from my SAMSUNG-SGH-T989 using xda app-developers app
Are you running side by side or in VM or did you install with wubi or did portion your hard drive or are you just trying it to see if it works
Sent from my GT-N7000 using XDA Premium HD app
---------- Post added at 08:00 PM ---------- Previous post was at 07:56 PM ----------
I setup 12.04 everything setup fine intell a try to download source keep getting fetch errors and stuff like source may be corrupt I'm trying for cm10.1 not sure what is going on but am going to start over buy uninstalling and reinstalling Ubuntu on my machine and start from scratch will see what I get
Sent from my GT-N7000 using XDA Premium HD app
It could just be the source entirely.....what is the fetch error....what is it trying to fetch that is causing the error
And how are you repoing the source?
Doing per some guides and even tried from teamhacksung wiki how to build CM10.1
As for the errors i can't remember the errors but I am starting over fresh Ubuntu and all
Sent from my GT-N7000 using XDA Premium HD app
Hi. I'm getting repo fetch errors when trying to sync the CM10.1 source code. I originally used the "repo sync -j16" command but I got the error and switched to just "repo sync". That didn't work though as I got the same error, which is
Code:
remote: aborting due to possible repository corruption on the remote side.
fatal: early EOF
fatal: index-pack failed
remote: Counting objects: 20804, done.
remote: Compressing objects: 100% (6058/6058), done.
remote: aborting due to possible repository corruption on the remote side.
fatal: early EOF
fatal: index-pack failed
error: Cannot fetch CyanogenMod/android_prebuilt
error: Exited sync due to fetch errors
Is the repo just having a bad day or is it a problem on my end? Thanks.
Try
repo sync -j1
Slower but stable
Or the repos are updated right now that would explain that behavior
™

Another! AOSP HOW TO GUIDE

/* ROM VERSION 4.4.2 WITH ADB LEVEL ROOT ONLY AND NO GAPPS*/
This is a guide on How to build a pure Vanilla AOSP ROM. This may NOT be the best way or the fastest way ,but its just the way I do it AS I HAVE TRIED TO SOMEWHAT SIMPLIFY IT ,from the Android Source page ,Feel free to add comments or ask questions. But before we even get started this will be done on a Linux machine running Ubuntu 13.04 and we have to get all the tools we need to get setup.#NOTE THE COMMANDS BELOW ARE READY FOR YOU TO COPY AND PASTE IN TERMINAL EMULATOR.
/*ADD JAVA*/ ;
$sudo add-apt-repository ppa:webupd8team/java
$sudo apt-get update && sudo apt-get install oracle-java6-installer
java -version
/*ADD NEEDED TOOLS TO YOUR PC */
$sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev zlib1g-dev:i386 libc6-dev lib32ncurses5-dev lib32z1 lib32ncurses5 lib32bz2-1.0 x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 lib32z1-dev libgl1-mesa-glx:i386 libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc readline-common libreadline6-dev libreadline6 lib32readline-gplv2-dev libncurses5-dev lib32readline5 lib32readline6 libreadline-dev libreadline6-dev:i386 libreadline6:i386 bzip2 libbz2-dev libbz2-1.0 libghc-bzlib-dev lib32bz2-dev libsdl1.2-dev libesd0-dev squashfs-tools pngcrush schedtool libwxgtk2.8-dev python
$sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
/*NEXT YOU NEED TO GET IN SYNC WITH THE GOOGLE REPOSITORYS LOCALLY*/;
/*Add repo to your system and make it readable and writable*/;
$mkdir ~/bin && curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo && $chmod a+x ~/bin/repo
Add a path to bin folder for the repo you just made so your system will find it
$sudo gedit .bashrc
$export PATH=~/bin:$PATH <-(add to end of bashrc)
/*SET UP GIT LOCALLY*/;
$git config --global user.email "[email protected]"
$git config --global user.name "yourpreferredusername"
/*NOW MAKE A FOLDER LABEL IT ANYNAME YOU WISH AND THEN SYNC LOCALLY WITH GIT REPOSITORYS*/;
IF USING A PROXY OR IF A MIRROR IS NEEDED BECAUSE YOU ARE ON A SLOW CONNECTION REFER TO THIS LINK http://source.android.com/source/downloading.html
/*After installing Repo, set up your client to access the Android source repository #LINE 3*/;
$mkdir ~/AOSP
$cd ~/AOSP
$repo init -u https://android.googlesource.com/platform/manifest -b android-4.4.2_r1
$repo sync
/*LOAD THE FOLLOWING KEY INTO YOUR GNUPG KEY DATABASE. THE KEY IS USED TO SIGN ANNOTATED TAGS THAT REPRESENT RELEASES.THE BELOW. !!! IS A COPY AND PASTE !!!FROM THE ANDROID SOURCE SITE*/;
$gpg --import
Copy and paste the key(s) below, then enter EOF (Ctrl-D) to end the input and process the keys.
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.2.2 (GNU/Linux)
mQGiBEnnWD4RBACt9/h4v9xnnGDou13y3dvOx6/t43LPPIxeJ8eX9WB+8LLuROSV
lFhpHawsVAcFlmi7f7jdSRF+OvtZL9ShPKdLfwBJMNkU66/TZmPewS4m782ndtw7
8tR1cXb197Ob8kOfQB3A9yk2XZ4ei4ZC3i6wVdqHLRxABdncwu5hOF9KXwCgkxMD
u4PVgChaAJzTYJ1EG+UYBIUEAJmfearb0qRAN7dEoff0FeXsEaUA6U90sEoVks0Z
wNj96SA8BL+a1OoEUUfpMhiHyLuQSftxisJxTh+2QclzDviDyaTrkANjdYY7p2cq
/HMdOY7LJlHaqtXmZxXjjtw5Uc2QG8UY8aziU3IE9nTjSwCXeJnuyvoizl9/I1S5
jU5SA/9WwIps4SC84ielIXiGWEqq6i6/sk4I9q1YemZF2XVVKnmI1F4iCMtNKsR4
MGSa1gA8s4iQbsKNWPgp7M3a51JCVCu6l/8zTpA+uUGapw4tWCp4o0dpIvDPBEa9
b/aF/ygcR8mh5hgUfpF9IpXdknOsbKCvM9lSSfRciETykZc4wrRCVGhlIEFuZHJv
aWQgT3BlbiBTb3VyY2UgUHJvamVjdCA8aW5pdGlhbC1jb250cmlidXRpb25AYW5k
cm9pZC5jb20+iGAEExECACAFAknnWD4CGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIX
gAAKCRDorT+BmrEOeNr+AJ42Xy6tEW7r3KzrJxnRX8mij9z8tgCdFfQYiHpYngkI
2t09Ed+9Bm4gmEO5Ag0ESedYRBAIAKVW1JcMBWvV/0Bo9WiByJ9WJ5swMN36/vAl
QN4mWRhfzDOk/Rosdb0csAO/l8Kz0gKQPOfObtyYjvI8JMC3rmi+LIvSUT9806Up
hisyEmmHv6U8gUb/xHLIanXGxwhYzjgeuAXVCsv+EvoPIHbY4L/KvP5x+oCJIDbk
C2b1TvVk9PryzmE4BPIQL/NtgR1oLWm/uWR9zRUFtBnE411aMAN3qnAHBBMZzKMX
LWBGWE0znfRrnczI5p49i2YZJAjyX1P2WzmScK49CV82dzLo71MnrF6fj+Udtb5+
OgTg7Cow+8PRaTkJEW5Y2JIZpnRUq0CYxAmHYX79EMKHDSThf/8AAwUIAJPWsB/M
pK+KMs/s3r6nJrnYLTfdZhtmQXimpoDMJg1zxmL8UfNUKiQZ6esoAWtDgpqt7Y7s
KZ8laHRARonte394hidZzM5nb6hQvpPjt2OlPRsyqVxw4c/KsjADtAuKW9/d8phb
N8bTyOJo856qg4oOEzKG9eeF7oaZTYBy33BTL0408sEBxiMior6b8LrZrAhkqDjA
vUXRwm/fFKgpsOysxC6xi553CxBUCH2omNV6Ka1LNMwzSp9ILz8jEGqmUtkBszwo
G1S8fXgE0Lq3cdDM/GJ4QXP/p6LiwNF99faDMTV3+2SAOGvytOX6KjKVzKOSsfJQ
hN0DlsIw8hqJc0WISQQYEQIACQUCSedYRAIbDAAKCRDorT+BmrEOeCUOAJ9qmR0l
EXzeoxcdoafxqf6gZlJZlACgkWF7wi2YLW3Oa+jv2QSTlrx4KLM=
=Wi5D
-----END PGP PUBLIC KEY BLOCK-----
After importing the keys, you can verify any tag with
$git tag -v TAG_NAME
/*INSTALL PROPRIETARY BINARIES .THESE ARE NEEDED FOR GPS/BLUETOOTH/ETC.*/;
https://developers.google.com/androi...rs#razorkrt16o
/*TIME TO GET STARTED*/;
source build/envsetup.sh
/*RUN LUNCH IN TERMINAL*/;
"Then select your proper selections"
/*THEN RUN MAKE*/;
BUILD EVERYTHING WITH MAKE.GNU MAKE CAN HANDLE PARALLEL TASK WITH A -jN ARGUMENT AND ITS A COMMON TASK TO USE A NUMBER OF TASKS N THATS BETWEEN 1 AND 2 TIMES THE NUMBER OF HARDWARE THREADS ON THE LOCALLY MACHINE. TO ME 12 IS A SAFE NUMBER FOR A LOW LEVEL QUAD CORE MACHINE.
make -j12 otapackage
Here are your Gapps:
http://forum.xda-developers.com/showthread.php?t=2397942
This SU, I recommend for your ROM by: Chainfire http://forum.xda-developers.com/showthread.php?t=1538053
Also because of my job all questions if any will be responded too only when I'm off of work, As I'm not allowed to be online or on a phone at work ,sorry guys I'll respond as soon as I get home.

[Q] [PROBLEM] Compiling ROM from source

I get started with ROM development by trying to port AOKP to my device. I installed Ubuntu 12.04 alongside Windows and everything was good. I followed http://forum.xda-developers.com/showthread.php?t=2223690 and I reached at some point but then I shut down the pc. Unfortunately the next day I tried booting Ubuntu and the only result was an error: Could not write bytes:broken pipe. I followed many threads trying to solve this problem but unfortunately no success. I even did a clean install, everything was going fine until I rebooted and the same error occured. So I found out that there's a problem with the packages. I also installed libglapi-mesa:i386 after typing this command:
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
Now even if I do a clean install I'm sure that when I try to install the required packages Ubuntu will break again and not booting. Please help what should I do to fix it? Maybe through a recovery command or something. I'm totally new to ubuntu too :crying:

Assistance in Compiling Kernels

Can you guys provide a STEP by STEP tutorial on how to compile kernel?
PLEASE DO NOT PROVIDE LINKS FROM OTHERS (Cause I probably already tried their method and I'm getting errors)
I have Ubuntu 16.04 LTS on a bootable USB
I have the kernel source
I have linaro toolchain 4.4.3
But for some reason, I'm getting these errors. (See error in the given picture)
ALSO... I can't seem to install libraries like kernel-package, lib32 etc.
THESE are the libraries I'm trying to install
[email protected]:~$ sudo apt-get install -y build-essential kernel-package libncurses5-dev bzip2
Reading package lists... Done
Building dependency tree
Reading state information... Done
Package kernel-package is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package 'kernel-package' has no installation candidate
[email protected]:~$ sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package lib32bz2-1.0
E: Couldn't find any package by glob 'lib32bz2-1.0'
E: Couldn't find any package by regex 'lib32bz2-1.0'
building using ubuntu on bootable USB ?
anyway , you should first install building tools like make complier , gzip , etc....and because you use bootable usb you may need install some important other packages too so I recommend installing ubuntu at least on virtual machine like VM box or any other one .
anyway you can try this command then try building again
Code:
sudo apt-get install git-core gnupg flex bison gperf build-essential \
zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 \
lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache \
libgl1-mesa-dev libxml2-utils xsltproc unzip
and you should remove "~" from cross compile path too so it should be like
Code:
CROSS_COMPILE=/home/.....
instead of
Code:
CROSS_COMPILE=~/home/.....
I cant seem to install ANY libraries. hmm... that's really strange.
Code:
[email protected]:~$ sudo apt-get install git-core gnupg flex bison gperf build-essential \
> zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 \
> lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache \
> libgl1-mesa-dev libxml2-utils xsltproc unzip
Reading package lists... Done
Building dependency tree
Reading state information... Done
Note, selecting 'lib32z1-dev' instead of 'lib32z-dev'
E: Unable to locate package gperf
RJinxed said:
I cant seem to install ANY libraries. hmm... that's really strange.
Code:
[email protected]:~$ sudo apt-get install git-core gnupg flex bison gperf build-essential \
> zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 \
> lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache \
> libgl1-mesa-dev libxml2-utils xsltproc unzip
Reading package lists... Done
Building dependency tree
Reading state information... Done
Note, selecting 'lib32z1-dev' instead of 'lib32z-dev'
E: Unable to locate package gperf
Click to expand...
Click to collapse
Can you try installing ubuntu on virtual box and try again ?
I saw a fix now.
https://www.blackmoreops.com/2014/1...sing-obsoleted-available-another-source-e-pa/
but UNFORTUNATELY, my pc broke. *bangs head to the wall* how inconvenient that it broke after I found a fix . UGH!

error while compiling a kernel

Recently Huawei has released the source code of the huawei p9 lite(But in truth it is the honor 5c source code that has been released,but since they both have same soc and same spec, it will 100% work.) i have installed this :
sudo apt-get install git ccache automake lzop bison gperf build-essential zip curl zlib1g-dev zlib1g-dev:i386 g++-multilib python-networkx libxml2-utils bzip2 libbz2-dev libbz2-1.0 libghc-bzlib-dev squashfs-tools pngcrush schedtool dpkg-dev liblz4-tool make optipng maven
git clone https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/
git clone https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9 -b android-7.1.1_r43 ~/android/kernel-gcc
i did the export and all the things
but when i enter "
make ARCH=arm64 O=out merge_hi6250_defconfig"
i have that error at the end, Knowing that I have not touched anything
https://ibb.co/dKN8Xv
and when i go to block/Kconfig.iosched i have this :
but i don't know what to modify
https://ibb.co/fHeBkF
i tried to continue,
i entered this command
make ARCH=arm64 O=out -j4
but at the end i have this
https://ibb.co/fAEVCv
it is the first kernel i wanna build
I hope someone can help me.
Thank you
anyone?

Categories

Resources