Re: 6.7. Linux-3.0.4 API Headers - make headers_check

2011-10-19 Thread Andrew Benton
On Tue, 18 Oct 2011 19:50:05 -0700
Don Burns d...@andesengineering.com wrote:

 Hello lfs'ers,
 
 I've just joined the list and, though I've seen this question asked in the
 archives, I did not find an answer that I could turn into a fix.  I'm
 building with Version 7.0-rc2, I've gotten to step 6.7, and followed,
 carefully, all steps, verbatim, leading to this (three times - just in
 case).
 
 root:/sources/linux-3.0.4# make headers_check
   CHK include/linux/version.h
   HOSTCC  scripts/basic/fixdep
 /tools/lib/gcc/i686-pc-linux-gnu/4.6.1/../../../../i686-pc-linux-gnu/bin/ld:
 warning: cannot find entry symbol _start; defaulting to 080486e0
 Usage: fixdep depfile target cmdline
 make[1]: *** [scripts/basic/fixdep] Error 1
 make: *** [scripts_basic] Error 2
 
 
 Insights would be very much appreciated.
 

Installing the kernel headers is the first thing that you do in chroot
that uses the programs installed in chapter 5. If something has gone
wrong it is the first time it might show up. From your error above it
looks like /tools/lib/i686-pc-linux-gnu/bin/ld is broken.
What does ldd /tools/lib/i686-pc-linux-gnu/bin/ld say? If it lists
libraries from /usr then it was compiled linked to libraries on your
host system that are not available in chroot and it will need to be
reinstalled along with anything else linked to your host system.

Andy
-- 
http://linuxfromscratch.org/mailman/listinfo/lfs-support
FAQ: http://www.linuxfromscratch.org/lfs/faq.html
Unsubscribe: See the above information page


7.0-rc2:Permission denied error in section 6.7.1

2011-10-19 Thread feralert
Hi all,

When trying to follow the book i have gotten to a Permission denied
error because in section 6.7.1. Installation of Linux API Headers
you are told to copy files to /usr/include as the lfs user, or so I
understood, please correct me if I'm missing something. I guess I just
have to copy them as root but I'm just saying so it can be corrected
in the book if needed.

make headers_check
make INSTALL_HDR_PATH=dest headers_install
find dest/include \( -name .install -o -name ..install.cmd \) -delete
cp -rv dest/include/* /usr/include


The version of the book being used: 7.0-rc2

The host distribution and version being used to create LFS:
CRUNCHBANG LINUX LIVE CD (crunchbang-10-20110207-openbox-i686.iso)
based on Debian Squeeze.

The output from the Section vii, “Host System Requirements”

The package or section the problem was encountered in:   linux-3.0.4.tar.gz

The exact error message or symptom being received:


/mnt/lfs/sources/linux-3.0.4$ cp -rv dest/include/* /usr/include
`dest/include/asm/vsyscall.h' - `/usr/include/asm/vsyscall.h'
cp: cannot create regular file `/usr/include/asm/vsyscall.h': Permission denied
[...]
`dest/include/xen/evtchn.h' - `/usr/include/xen/evtchn.h'
cp: cannot create regular file `/usr/include/xen/evtchn.h': Permission denied


Note whether you have deviated from the book at all:  NO



Cheers,
Fred.




“Free software” is a matter of liberty, not price. To understand the
concept, you should think of “free” as in “free speech”, not as in
“free beer”.

Free software is a matter of the users' freedom to run, copy,
distribute, study, change and improve the software.
-- 
http://linuxfromscratch.org/mailman/listinfo/lfs-support
FAQ: http://www.linuxfromscratch.org/lfs/faq.html
Unsubscribe: See the above information page


Re: 7.0-rc2:Permission denied error in section 6.7.1

2011-10-19 Thread feralert
Ooops... I see what happened now:

From section 5.6.1. Installation of Linux API Headers I followed the
link Details on this package are located in Section 6.7.2, “Contents
of Linux API Headers.”, and in that page there is not only the
contents section but also a 6.7.1. Installation of Linux API
Headers, thats where i got mixed up because instead of going back to
the original  5.6.1. Installation of Linux API Headers I carried on
from 6.7.1. Installation of Linux API Headers.

Sorry, my mistake. Thank you for putting me in the right direction.

Cheers,
Fred.


“Free software” is a matter of liberty, not price. To understand the
concept, you should think of “free” as in “free speech”, not as in
“free beer”.

Free software is a matter of the users' freedom to run, copy,
distribute, study, change and improve the software.



On Wed, Oct 19, 2011 at 6:29 PM, Bruce Dubbs bruce.du...@gmail.com wrote:
 feralert wrote:

 When trying to follow the book i have gotten to a Permission denied
 error because in section 6.7.1. Installation of Linux API Headers
 you are told to copy files to /usr/include as the lfs user, or so I
 understood, please correct me if I'm missing something.

 For Chapter 6, you should have entered chroot in section 6.4.  At that
 point you should be root.

   -- Bruce
 --
 http://linuxfromscratch.org/mailman/listinfo/lfs-dev
 FAQ: http://www.linuxfromscratch.org/faq/
 Unsubscribe: See the above information page

-- 
http://linuxfromscratch.org/mailman/listinfo/lfs-support
FAQ: http://www.linuxfromscratch.org/lfs/faq.html
Unsubscribe: See the above information page


Re: 6.7. Linux-3.0.4 API Headers - make headers_check - FIXED (I think)

2011-10-19 Thread Don Burns
Update:

After attempting to debug the problem, and finding that I had no symbols
(because the executables are stripped), I went back and redid everything
from scratch for a fourth time (I'm getting good at this), but this time
skipped the strip step (5.34), in order to see if I had a _start symbol in
my crt1.o.

Evidently, something must have gone wrong during the strip step on previous
builds, because this time, things seem to be working.

So far, fingers crossed.

-don

On Wed, Oct 19, 2011 at 9:10 AM, Don Burns d...@andesengineering.com wrote:

 Thanks for your reply, Andrew.  ld seems to be fine:

 root:/# ldd /tools/i686-pc-linux-gnu/bin/ld
  linux-gate.so.1 =  (0x00dcc000)
 libdl.so.2 = /tools/lib/libdl.so.2 (0x00ca4000)
  libc.so.6 = /tools/lib/libc.so.6 (0x0067e000)
 /tools/lib/ld-linux.so.2 (0x00e09000)

 ld, in fact seems to run:

 root:/#
 /tools/lib/gcc/i686-pc-linux-gnu/4.6.1/../../../../i686-pc-linux-gnu/bin/ld
 /tools/lib/gcc/i686-pc-linux-gnu/4.6.1/../../../../i686-pc-linux-gnu/bin/ld:
 no input files

 Investigating further, I ran the verbose mode of the kernel build:

 root:/sources/linux-3.0.4# KBUILD_VERBOSE=1 make headers_check
 set -e; : '  CHK include/linux/version.h'; mkdir -p include/linux/; (echo
 \#define LINUX_VERSION_CODE 196612; echo '#define KERNEL_VERSION(a,b,c)
 (((a)  16) + ((b)  8) + (c))';)  /sources/linux-3.0.4/Makefile 
 include/linux/version.h.tmp; if [ -r include/linux/version.h ]  cmp -s
 include/linux/version.h include/linux/version.h.tmp; then rm -f
 include/linux/version.h.tmp; else : '  UPD include/linux/version.h'; mv
 -f include/linux/version.h.tmp include/linux/version.h; fi
 make -f scripts/Makefile.build obj=scripts/basic
   gcc -Wp,-MD,scripts/basic/.fixdep.d -Wall -Wmissing-prototypes
 -Wstrict-prototypes -O2 -fomit-frame-pointer -o scripts/basic/fixdep
 scripts/basic/fixdep.c
 /tools/lib/gcc/i686-pc-linux-gnu/4.6.1/../../../../i686-pc-linux-gnu/bin/ld:
 warning: cannot find entry symbol _start; defaulting to 080486e0
 Usage: fixdep depfile target cmdline
 make[1]: *** [scripts/basic/fixdep] Error 1
 make: *** [scripts_basic] Error 2
 root:/sources/linux-3.0.4# scripts/

 So, the build is calling gcc, which is then calling ld, which is producing
 the error message.  What's curious is that fixdep is actually built and is
 runnable, evidenced by the usage message.  I even tried it by hand.  Its
 almost as if the gcc run time is not right.

 Any other ideas?

 Thanks,

 -don

 On Wed, Oct 19, 2011 at 7:27 AM, Andrew Benton b3n...@gmail.com wrote:

 On Tue, 18 Oct 2011 19:50:05 -0700
 Don Burns d...@andesengineering.com wrote:

  Hello lfs'ers,
 
  I've just joined the list and, though I've seen this question asked in
 the
  archives, I did not find an answer that I could turn into a fix.  I'm
  building with Version 7.0-rc2, I've gotten to step 6.7, and followed,
  carefully, all steps, verbatim, leading to this (three times - just in
  case).
 
  root:/sources/linux-3.0.4# make headers_check
CHK include/linux/version.h
HOSTCC  scripts/basic/fixdep
 
 /tools/lib/gcc/i686-pc-linux-gnu/4.6.1/../../../../i686-pc-linux-gnu/bin/ld:
  warning: cannot find entry symbol _start; defaulting to 080486e0
  Usage: fixdep depfile target cmdline
  make[1]: *** [scripts/basic/fixdep] Error 1
  make: *** [scripts_basic] Error 2
 
 
  Insights would be very much appreciated.
 

 Installing the kernel headers is the first thing that you do in chroot
 that uses the programs installed in chapter 5. If something has gone
 wrong it is the first time it might show up. From your error above it
 looks like /tools/lib/i686-pc-linux-gnu/bin/ld is broken.
 What does ldd /tools/lib/i686-pc-linux-gnu/bin/ld say? If it lists
 libraries from /usr then it was compiled linked to libraries on your
 host system that are not available in chroot and it will need to be
 reinstalled along with anything else linked to your host system.

 Andy
 --
 http://linuxfromscratch.org/mailman/listinfo/lfs-support
 FAQ: http://www.linuxfromscratch.org/lfs/faq.html
 Unsubscribe: See the above information page



-- 
http://linuxfromscratch.org/mailman/listinfo/lfs-support
FAQ: http://www.linuxfromscratch.org/lfs/faq.html
Unsubscribe: See the above information page