[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [OT] compiled kernels do not boot

On Sat, 26 Mar 2011 18:31:57 -0400 (EDT), Scott Ferguson wrote:
> On 27/03/11 00:29, Stephen Powell wrote:
>> On Fri, 25 Mar 2011 16:19:11 -0400 (EDT), Hugo Vanwoerkom wrote:
>>> I have tried 3 self-compiled kernels and they do not boot. They compile 
>>> w/o errors.
>>> They are compiled with 'make-kpkg --revision 1 --append-to-version -ck2 
>>> --initrd kernel_image'. This is with an uptodate Sid.
> Could your problem be the missing "=":-
> make-kpkg --revision*=*1??

I can't speak for Hugo in general, but I can tell you that the equal sign
is not required.  It may have been required at one time, but it isn't
anymore.  My best guess at this point is that he is failing to initialize
the .config file from the Debian stock kernel config file prior to running
make menuconfig.  But that's just a guess.  There are many "gotchas" in
kernel building, and just one mistake can be fatal.  That's why I wrote my
kernel building web page and why I recommend it to people having problems.
I spend a lot of time keeping it up too, so it's fairly up-to-date.


> From my notes for --append-to-version:-
> "You may use alphanumeric characters, "+" and "." (period or full stop);
> do not use underscore "_" or spaces, = is required"

Obsolete.  I never use "=".
> From my dodgy memory the same rules apply to --revision

Also obsolete.
> Also you order the process differently, not sure if that matters, at a
> minimum I'd use:-
> make-kpkg --rootcmd fakeroot --initrd kernel_image kernel_headers

Most people don't need to build a kernel headers package, but if you
really do need kernel headers and you include the kernel_headers
target then you cannot use the "--rootcmd fakeroot" option.  In this
case you must run the entire make-kpkg command under fakeroot.  I.e.

   fakeroot make-kpkg ... kernel_image kernel_headers

Of course, if you are logged in as root then you don't need the
fakeroot prefix command.
> I'd normally use something like:-
> make-kpkg --rootcmd fakeroot --initrd --revision=custom kernel_image
> kernel_headers

Again, use of the kernel_headers target requires that the entire
command run under fakeroot.  This is not documented, but it is true.
I have verified it by trial-and-error experimentation.  Also, I
recommend that the --revision option be the same as the source package
version and to include "custom" in --append-to-version.  This is
all covered in my web page.
> Perhaps someone else can tell whether the syntax (=), and/or the order
> is important?

The order of options is not important and the equal sign is not required.
> <snipped>
> After the official Debian resources I use
> http://kernelnewbies.org/Linux_Kernel_Newbies (which better qualifies my
> level of expertise!)
> Cheers

All well and good, but my web page is Debian-specific and very detailed.
It's not short but it is comprehensive.

  .''`.     Stephen Powell    
 : :'  :
 `. `'`

Reply to: