Solved

Kernel compilation issues

Posted on 2011-09-20
12
966 Views
Last Modified: 2012-05-12
Hello experts,

I get the following error when I compile the Android source code.

 
Console input/output is redirected. Run 'make oldconfig' to update configuration.

make[4]: *** [silentoldconfig] Error 1
make[3]: *** [silentoldconfig] Error 2
Install: out/host/linux-x86/lib/libsqlite_jni.so
make[2]: *** No rule to make target `include/config/auto.conf', needed by `include/config/kernel.release'.  Stop.
make[1]: *** [sub-make] Error 2
make[1]: Leaving directory `/home/anees/EC40_A8130S/LINUX/android/kernel'
make: *** [out/target/product/SH80F/obj/KERNEL_OBJ/arch/arm/boot/Image] Error 2
make: *** Waiting for unfinished jobs....
cp: cannot stat `LINUX/android/out/target/product/SH80F/appsboot.mbn': No such file or directory
error : appsboot.mbn creation is failed.
Done

Time duration: 6 mins
Press ENTER to exit...

Open in new window


Can someone kindly let me know, how I can resolve this isse?

Any help in this regard which will guide me to the correct solution would be well appreciated with points.

Regards,
Sree
0
Comment
Question by:Sreejith22
  • 5
  • 4
  • 3
12 Comments
 
LVL 13

Expert Comment

by:Hugh McCurdy
ID: 36566818
If you used the -j option on make, try running make without -j.

It could actually be overheating (don't laugh, happened to me on an old notebook -- solved by directing a fan at the box).  This is super rare.

More likely, the make file isn't right or you are missing files.  I would try (and have tried) installing the kernel tree again and compiling it in "out of the box" mode.  If that works, I'd modify the configuration as needed (perhaps taking small steps) and try again.
0
 

Author Comment

by:Sreejith22
ID: 36572451
Hi,

I copied the aource directory which works perfectly in one of my colleagues machine to mine, still I get the same issue

error : appsboot.mbn creation is failed.
Done

Time duration: 6 mins
Press ENTER to exit...

Attached here is the file which I use for compilation.

I use "./build_Gingerbread.sh" to begin compilation.

Any help which would provide me a solution would be much appreciated.
build-Gingerbread.sh
0
 
LVL 12

Expert Comment

by:HappyCactus
ID: 36572686
Try restarting from a clean / distclean source branch. It seems like a dangling file problem - the auto.conf dependency has broken.

0
 
LVL 13

Expert Comment

by:Hugh McCurdy
ID: 36572785
Does include/config/auto.conf already exist?  

Make either sees the file it wants or tries to make it.  If it doesn't have a rule to make it, it says that there's no rule instead of saying "can't find..."  The problem could be that the file can't be found.  

Anyway, when I said "out of the box mode" I didn't mean to copy it from someone else's computer.  You might not get everything you need.  What I do is I rename the folder where I'm having trouble, ie to linux-2.6.44.5-bad and then get a new copy of the kernel from kernel.org and unzip it, which creates new folders as it goes.  Then see if it compiles.  Then I make changes.

One thing to determine is to make sure that you don't have a problem elsewhere in your computer, outside the source tree.  This doesn't seem likely and it isn't likely.  But it is something and if it isn't obvious, time to look for what isn't obvious.
0
 

Author Comment

by:Sreejith22
ID: 36572958
This is what happened when I tried with a fresh source which I downloaded. In other machines, the same downloaded source gets compiled perfectly. Is this due to any machine related or dependency issues?

 
make: *** No rule to make target `out/target/common/obj/JAVA_LIBRARIES/SimCardAuthenticationManagerLib_intermediates/javalib.jar', needed by `out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/classes-full-debug.jar'.  Stop.
make: *** Waiting for unfinished jobs....
logtags: out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/src/telephony/java/com/android/internal/telephony/EventLogTags.java <= frameworks/base/telephony/java/com/android/internal/telephony/EventLogTags.logtags
cp: cannot stat `LINUX/android/out/target/product/SH80F/appsboot.mbn': No such file or directory
error : appsboot.mbn creation is failed.
Binaries newer
Release_2011_09_21_1257 created
Done


Time duration: 2 mins
Press ENTER to exit...

Open in new window

0
 
LVL 12

Expert Comment

by:HappyCactus
ID: 36572993
Maybe you are missing some tool. Are all required packages installed?
Check carefully what is installed in the "working" machine and what is missing in yours. Maybe something related to java (maybe some java compiler o packager?)

0
How to improve team productivity

Quip adds documents, spreadsheets, and tasklists to your Slack experience
- Elevate ideas to Quip docs
- Share Quip docs in Slack
- Get notified of changes to your docs
- Available on iOS/Android/Desktop/Web
- Online/Offline

 
LVL 13

Accepted Solution

by:
Hugh McCurdy earned 125 total points
ID: 36573079
Do you have the Java Development Kit installed?  Perhaps reinstalling it might help.

At the shell try

javac  -version

Then the same command on a working computer.

If javac is missing, that's a problem.  If the versions don't match, that might be a problem.
0
 

Author Comment

by:Sreejith22
ID: 36578826
Inside the source folder from which I give the compilation command, when I type javac  -version, I get

 
anees@anees-desktop:~/Gingerbread$ javac -version
Error occurred during initialization of VM
java.lang.Error: Properties init: Could not determine current working directory.
	at java.lang.System.initProperties(Native Method)
	at java.lang.System.initializeSystemClass(System.java:1069)

Open in new window


Outside the source folder:

 
anees@anees-desktop:~$ javac -version
javac 1.6.0_20

Open in new window


In the machine in which compilation is perfect, inside source folder:

 
anees@Abhishek-desktop:~/Gingerbread$ javac -version
javac 1.6.0_20

Open in new window


Is there anything obvious you can see?
0
 
LVL 12

Expert Comment

by:HappyCactus
ID: 36578854
Check the permissions of the sources tree. Set it 0666 for files and 0777 for directories. It seems that javac runs as "other".

0
 

Author Comment

by:Sreejith22
ID: 36579270
would be great if you can kindly provide the commands for the same. sorry, I am a newbie to Linux commands.

The only one I use for changing the folder permission is chmod -R 777 foldername
0
 
LVL 12

Assisted Solution

by:HappyCactus
HappyCactus earned 125 total points
ID: 36579282
first, check the parameters with ls -l. Check owners and groups.
if you do not have any particular security requirements, do this:

find ./ -type f -exec chmod 666 \{\} \;
find ./ -type d -exec chmod 777 \{\} \;

Open in new window


man find for details.

0
 

Author Comment

by:Sreejith22
ID: 36940622
solved myself. was missing an 'Out' folder which had to be present while doing compilation.
0

Featured Post

How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

This tutorial is posted by Aaron Wojnowski, administrator at SDKExpert.net.  To view more iPhone tutorials, visit www.sdkexpert.net. This is a very simple tutorial on finding the user's current location easily. In this tutorial, you will learn ho…
Have you ever been frustrated by having to click seven times in order to retrieve a small bit of information from the web, always the same seven clicks, scrolling down and down until you reach your target? When you know the benefits of the command l…
Learn several ways to interact with files and get file information from the bash shell. ls lists the contents of a directory: Using the -a flag displays hidden files: Using the -l flag formats the output in a long list: The file command gives us mor…
Video by: Grant
The goal of this video is to provide viewers with basic examples to understand and use for-loops in the C programming language.

744 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now