LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux From Scratch (https://www.linuxquestions.org/questions/linux-from-scratch-13/)
-   -   Section 6.7. Linux-2.6.37 API Headers make error (https://www.linuxquestions.org/questions/linux-from-scratch-13/section-6-7-linux-2-6-37-api-headers-make-error-905690/)

steviebob 09-29-2011 06:57 PM

Section 6.7. Linux-2.6.37 API Headers make error
 
Whenever I run make headers_check I get an error about not being able to locate strict.pm in @INC. Here is the full output of
make headers_check:
Code:

root:/sources/torvalds-linux-4a7895f# make headers_check
  CHK    include/linux/version.h
  UPD    include/linux/version.h
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/basic/docproc
  HOSTCC  scripts/unifdef
  INSTALL include/asm-generic (34 files)
Can't locate strict.pm in @INC (@INC contains: /tools/lib/perl5/site_perl/5.12.3/i686-linux /tools/lib/perl5/site_perl/5.12.3 /tools/lib/perl5/5.12.3/i686-linux /tools/lib/perl5/5.12.3 .) at scripts/headers_install.pl line 19.
BEGIN failed--compilation aborted at scripts/headers_install.pl line 19.
make[2]: *** [/sources/torvalds-linux-4a7895f/usr/include/asm-generic/.install] Error 2
make[1]: *** [asm-generic] Error 2
make: *** [headers_install] Error 2

Help is greatly appreciated
~Steve

druuna 09-30-2011 01:13 AM

Hi,

First of all: Which chapter is this 5.6 or 6.7? (I assume it is 6.7 due to the missing /mnt/lfs part). Please provide basic information such as: Which LFS version, which chapter you are working on and which host you are using.

Quote:

Originally Posted by steviebob
root:/sources/torvalds-linux-4a7895f# make headers_check

This looks suspicious, I would expect: /sources/torvalds-linux-4a7895f/linux-2.6.37. Did you untar the linux-2.6.37.tar.bz2 package and enter the created directory?

If the above isn't the problem and this is chapter 6.7: The error complains about perl, which was installed in chapter 5.28. Are you 100% sure it installed correctly?

Hope this helps.

steviebob 09-30-2011 10:52 AM

Quote:

Originally Posted by druuna (Post 4486200)
Hi,

First of all: Which chapter is this 5.6 or 6.7? (I assume it is 6.7 due to the missing /mnt/lfs part). Please provide basic information such as: Which LFS version, which chapter you are working on and which host you are using.

This looks suspicious, I would expect: /sources/torvalds-linux-4a7895f/linux-2.6.37. Did you untar the linux-2.6.37.tar.bz2 package and enter the created directory?

If the above isn't the problem and this is chapter 6.7: The error complains about perl, which was installed in chapter 5.28. Are you 100% sure it installed correctly?

Hope this helps.

This is chapter 6.7, I'm installing from /sources/torvalds-linux-4a7895f/ because that's the only download location for the linux kernel version 2.6.37 that I could find (I got it from github) and that was just the package name. the full package name is (when still tar'd) torvalds-linux-v2.6.37-0-g3c0eee3.tar.gz. I got it from there because kernel.org is down right now. And I'm building from Ubuntu Natty Narwhal. How would I go back to install perl again? Just log into lfs and redo that section?

~Steve

spiky0011 09-30-2011 11:09 AM

There are 2 links in this post
http://www.linuxquestions.org/questi...el-tar-904001/

Yes I would log back in, remove the build directory and redo it

druuna 09-30-2011 11:19 AM

Hi,
Quote:

Originally Posted by steviebob
I'm installing from /sources/torvalds-linux-4a7895f/ because that's the only download location for the linux kernel version 2.6.37 that I could find (I got it from github) and that was just the package name.

I would suggest you make sure you download the correct packages, which are also available here: lfs-packages 6.8.

Quote:

How would I go back to install perl again? Just log into lfs and redo that section?
You are still at the very beginning of chapter 6 so you should be able to redo by:
- exiting the chrooted environment,
- log in as user lfs,
- make sure the correct environment is set (LFS etc),
- install 5.28. Perl-5.12.3

Hope this helps.

steviebob 09-30-2011 12:33 PM

I went and reinstalled perl, downloaded linux-2.6.37 from the link posted, untarred it, remounted temporary /dev/ devices, entered the chroot environment, and tried doing make headers_check again, but it came up with the same error. I triple-checked if I installed perl correctly, which I did, according to the book, anyway. Any other ideas?

druuna 09-30-2011 01:02 PM

Hi,

As far as I can see 2 things could be wrong:

- Perl isn't installed correctly. strict.pm is part of the basic perl installation done in 5.28. Have you checked (inside and outside the chrooted environment) if strict.pm is present? /tools/lib/perl5/5.12.3 and /tools/bin are the target directories used in 5.28.

- Linux-2.6.37 API Headers is the very first package used in chapter 6, have you double checked chapters 6.1 -> 6.6 and is all set up correctly?

Not much to go on, but hope this helps

steviebob 09-30-2011 01:46 PM

Quote:

Originally Posted by druuna (Post 4486588)
- Perl isn't installed correctly. strict.pm is part of the basic perl installation done in 5.28. Have you checked (inside and outside the chrooted environment) if strict.pm is present? /tools/lib/perl5/5.12.3 and /tools/bin are the target directories used in 5.28.

Ah, turns out that I typed /tools/lilb/perl15/5.12.3 instead of /tools/lib/perl5/5.12.3. Stupid mistake made by me. What else would you expect from a sleep deprived computer nerd at 3 in the morning? Haha. Thanks for the support anyway, I probably wouldn't have figured it out by myself.

~Steve


All times are GMT -5. The time now is 07:51 PM.