Problems compiling Perl 5.8.0 in chapter 5 of LFS 5.0

rah03 at doc.ic.ac.uk rah03 at doc.ic.ac.uk
Fri Jan 30 11:22:41 PST 2004


Hi,

I seem to be unable to compile Perl 5.8.0 in chapter 5 of LFS 5.0. I have
checked using MD5 that the archive is intact and have followed the instructions
accurately multiple times but still have the same problem.

The first time I run 'make perl utilities', I get this (output provided from the
first error onwards):

###############################################
Making DynaLoader (static)
make[1]: Entering directory `/mnt/lfs/sources/perl-5.8.0/ext/DynaLoader'
Makefile out-of-date with respect to ../../lib/Config.pm ../../config.h
Cleaning current config before rebuilding Makefile...
make -f Makefile.old clean > /dev/null 2>&1 || /bin/sh -c true
/mnt/lfs/sources/perl-5.8.0/miniperl "-I../../lib" "-I../../lib" Makefile.PL
"INSTALLDIRS=perl" "PERL_CORE=1" "LIBPERL_A=libperl.a"
Processing hints file hints/linux.pl
Writing Makefile for DynaLoader
==> Your Makefile has been rebuilt. <==
==> Please rerun the make command.  <==
false
make[1]: *** [Makefile] Error 1
make[1]: Leaving directory `/mnt/lfs/sources/perl-5.8.0/ext/DynaLoader'
make config failed, continuing anyway...
make[1]: Entering directory `/mnt/lfs/sources/perl-5.8.0/ext/DynaLoader'
/mnt/lfs/sources/perl-5.8.0/miniperl "-I../../lib" "-I../../lib" "-I../../lib"
"-I../../lib" DynaLoader_pm.PL DynaLoader.pm
/mnt/lfs/sources/perl-5.8.0/miniperl "-I../../lib" "-I../../lib" "-I../../lib"
"-I../../lib" XSLoader_pm.PL XSLoader.pm
Skip ../../lib/XSLoader.pm (unchanged)
Skip ../../lib/DynaLoader.pm (unchanged)
rm -f DynaLoader.xs
cp dl_dlopen.xs DynaLoader.xs
/mnt/lfs/sources/perl-5.8.0/miniperl "-I../../lib" "-I../../lib"
../../lib/ExtUtils/xsubpp -noprototypes -typemap ../../lib/ExtUtils/typemap
DynaLoader.xs > DynaLoader.xsc && mv DynaLoader.xsc DynaLoader.c
cc -c   -fno-strict-aliasing -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O3  
-DVERSION=\"1.04\" -DXS_VERSION=\"1.04\"  "-I../.."  -DPERL_CORE
-DLIBC="/tools/lib/libc-2.3.2.so" DynaLoader.c
rm -rf ../../lib/auto/DynaLoader/DynaLoader.a
/tools/bin/ar cr ../../lib/auto/DynaLoader/DynaLoader.a DynaLoader.o && :
../../lib/auto/DynaLoader/DynaLoader.a
chmod 755 ../../lib/auto/DynaLoader/DynaLoader.a
make[1]: Leaving directory `/mnt/lfs/sources/perl-5.8.0/ext/DynaLoader'

	Skipping lib/auto/I0/I0.a (directory does not exist)

	Making re (static)
make[1]: Entering directory `/mnt/lfs/sources/perl-5.8.0/ext/re'
Makefile out-of-date with respect to ../../lib/Config.pm ../../config.h
Cleaning current config before rebuilding Makefile...
make -f Makefile.old clean > /dev/null 2>&1 || /bin/sh -c true
/mnt/lfs/sources/perl-5.8.0/miniperl "-I../../lib" "-I../../lib" Makefile.PL
"INSTALLDIRS=perl" "PERL_CORE=1" "LIBPERL_A=libperl.a"
Writing Makefile for re
==> Your Makefile has been rebuilt. <==
==> Please rerun the make command.  <==
false
make[1]: *** [Makefile] Error 1
make[1]: Leaving directory `/mnt/lfs/sources/perl-5.8.0/ext/re'
make config failed, continuing anyway...
make[1]: Entering directory `/mnt/lfs/sources/perl-5.8.0/ext/re'
cp re.pm ../../lib/re.pm
rm -f re_exec.c
cp ../../regexec.c re_exec.c
cc -c   -fno-strict-aliasing -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O3  
-DVERSION=\"0.03\" -DXS_VERSION=\"0.03\"  "-I../.."  -DPERL_EXT_RE_BUILD
-DPERL_EXT_RE_DEBUG re_exec.c
rm -f re_comp.c
cp ../../regcomp.c re_comp.c
cc -c   -fno-strict-aliasing -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O3  
-DVERSION=\"0.03\" -DXS_VERSION=\"0.03\"  "-I../.."  -DPERL_EXT_RE_BUILD
-DPERL_EXT_RE_DEBUG re_comp.c
/mnt/lfs/sources/perl-5.8.0/miniperl "-I../../lib" "-I../../lib"
../../lib/ExtUtils/xsubpp -noprototypes -typemap ../../lib/ExtUtils/typemap 
re.xs > re.xsc && mv re.xsc re.c
cc -c   -fno-strict-aliasing -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O3  
-DVERSION=\"0.03\" -DXS_VERSION=\"0.03\"  "-I../.."  -DPERL_EXT_RE_BUILD
-DPERL_EXT_RE_DEBUG re.c
rm -rf ../../lib/auto/re/re.a
/tools/bin/ar cr ../../lib/auto/re/re.a re_exec.o re_comp.o re.o && :
../../lib/auto/re/re.a
chmod 755 ../../lib/auto/re/re.a
make[1]: Leaving directory `/mnt/lfs/sources/perl-5.8.0/ext/re'

	Making Fcntl (static)
make[1]: Entering directory `/mnt/lfs/sources/perl-5.8.0/ext/Fcntl'
Makefile out-of-date with respect to ../../lib/Config.pm ../../config.h
Cleaning current config before rebuilding Makefile...
make -f Makefile.old clean > /dev/null 2>&1 || /bin/sh -c true
/mnt/lfs/sources/perl-5.8.0/miniperl "-I../../lib" "-I../../lib" Makefile.PL
"INSTALLDIRS=perl" "PERL_CORE=1" "LIBPERL_A=libperl.a"
Writing Makefile for Fcntl
==> Your Makefile has been rebuilt. <==
==> Please rerun the make command.  <==
false
make[1]: *** [Makefile] Error 1
make[1]: Leaving directory `/mnt/lfs/sources/perl-5.8.0/ext/Fcntl'
make config failed, continuing anyway...
make[1]: Entering directory `/mnt/lfs/sources/perl-5.8.0/ext/Fcntl'
Skip ../../lib/Fcntl.pm (unchanged)
/mnt/lfs/sources/perl-5.8.0/miniperl "-I../../lib" "-I../../lib"
../../lib/ExtUtils/xsubpp -noprototypes -typemap ../../lib/ExtUtils/typemap 
Fcntl.xs > Fcntl.xsc && mv Fcntl.xsc Fcntl.c
cc -c   -fno-strict-aliasing -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O3  
-DVERSION=\"1.04\" -DXS_VERSION=\"1.04\"  "-I../.."   Fcntl.c
rm -rf ../../lib/auto/Fcntl/Fcntl.a
/tools/bin/ar cr ../../lib/auto/Fcntl/Fcntl.a Fcntl.o && :
../../lib/auto/Fcntl/Fcntl.a
chmod 755 ../../lib/auto/Fcntl/Fcntl.a
make[1]: Leaving directory `/mnt/lfs/sources/perl-5.8.0/ext/Fcntl'
cc -o perl   -rdynamic perlmain.o lib/auto/DynaLoader/DynaLoader.a
lib/auto/I0/I0.a lib/auto/re/re.a lib/auto/Fcntl/Fcntl.a libperl.a `cat
ext.libs` -lnsl -ldl -lm -lc -lcrypt -lutil 
cc: lib/auto/I0/I0.a: No such file or directory
make: *** [perl] Error 1
###############################################

I noted that this output contains:

###############################################
==> Your Makefile has been rebuilt. <==
==> Please rerun the make command.  <==
###############################################

So I ran 'make perl utilities' again as suggested and I then get a different
output (no mention of out-of-date make files, however the 'lib/auto/I0/I0.a: No
such file or directory' error is still mentioned):

###############################################
	AutoSplitting perl library
./miniperl -Ilib -e 'use AutoSplit; \
autosplit_lib_modules(@ARGV)' lib/*.pm
./miniperl -Ilib -e 'use AutoSplit; \
autosplit_lib_modules(@ARGV)' lib/*/*.pm
make lib/re.pm
make[1]: Entering directory `/mnt/lfs/sources/perl-5.8.0'
make[1]: `lib/re.pm' is up to date.
make[1]: Leaving directory `/mnt/lfs/sources/perl-5.8.0'

	Making DynaLoader (static)
make[1]: Entering directory `/mnt/lfs/sources/perl-5.8.0/ext/DynaLoader'
make[1]: Leaving directory `/mnt/lfs/sources/perl-5.8.0/ext/DynaLoader'
make[1]: Entering directory `/mnt/lfs/sources/perl-5.8.0/ext/DynaLoader'
make[1]: Leaving directory `/mnt/lfs/sources/perl-5.8.0/ext/DynaLoader'

	Skipping lib/auto/I0/I0.a (directory does not exist)

	Making re (static)
make[1]: Entering directory `/mnt/lfs/sources/perl-5.8.0/ext/re'
make[1]: Leaving directory `/mnt/lfs/sources/perl-5.8.0/ext/re'
make[1]: Entering directory `/mnt/lfs/sources/perl-5.8.0/ext/re'
make[1]: Leaving directory `/mnt/lfs/sources/perl-5.8.0/ext/re'

	Making Fcntl (static)
make[1]: Entering directory `/mnt/lfs/sources/perl-5.8.0/ext/Fcntl'
make[1]: Leaving directory `/mnt/lfs/sources/perl-5.8.0/ext/Fcntl'
make[1]: Entering directory `/mnt/lfs/sources/perl-5.8.0/ext/Fcntl'
make[1]: Leaving directory `/mnt/lfs/sources/perl-5.8.0/ext/Fcntl'
cc -o perl   -rdynamic perlmain.o lib/auto/DynaLoader/DynaLoader.a
lib/auto/I0/I0.a lib/auto/re/re.a lib/auto/Fcntl/Fcntl.a libperl.a `cat
ext.libs` -lnsl -ldl -lm -lc -lcrypt -lutil 
cc: lib/auto/I0/I0.a: No such file or directory
make: *** [perl] Error 1
###############################################

Running it again after this simply gives the same output as above.

Does anyone have any idea where I'm going wrong?

Thanks,

Richard Hayden.



More information about the lfs-support mailing list