LinuxQuestions.org
Help answer threads with 0 replies.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Linux From Scratch
User Name
Password
Linux From Scratch This Forum is for the discussion of LFS.
LFS is a project that provides you with the steps necessary to build your own custom Linux system.

Notices

Reply
 
LinkBack Search this Thread
Old 06-28-2006, 08:49 AM   #1
AxXium
Zenwalk Admin
 
Registered: May 2005
Location: Louisiana, U.S.A.
Distribution: Zenwalk Gnu/Linux
Posts: 258

Rep: Reputation: 31
Glibc-2.4 /checking for C cleanup handling... no


Guys,

I will tell you up front that I am working from a SVN LFS book (Version SVN-20060619) and have updated to the latest stable soft versions at the same time. So far I have been able to work through everything as patches are available and every required test has passed. I have had no troubles whatsoever until now.

The problem is in Chapter 6.9. where I am attempting to configure Glibc-2.4 (remember I had not troubles building it for the temp system in chap. 5.6.)

The problem:

Configure stops at an error saying "configure: error: the compiler must support C cleanup handling"

Here is my info so that you may be able to help me.

Below you will see the following information.
1. The host system I am running.
2. The package versions I have sucessfully built for the temp system.
3. The configure error while attempting to configure Glibc.
4. The last section of the config.log for Glibc that contains the error.

Here we go...

1. The host system I am running.
Code:
Slackware Linux 10.2
2. The package versions I have sucessfully built for the temp system.
Code:
Bash-3.1
Binutils-2.17
Bzip2-1.0.3
Coreutils-0.97
DejaGNU-1.4.4
Diffutils-2.8.1
Expect-5.43.0
Findutils-4.2.27
Gawk-3.1.5
GCC-4.1.1
Gettext-0.14.5
Glibc-2.4
Grep-2.5.1a
Gzip-1.3.5
Linux-Libc-Headers-2.16.2
M4-1.4.4
Make-3.80
Ncurses-5.5
Patch-2.5.4
Perl-5.8.8
Sed-4.1.5
Tar-1.15.1
Tcl-8.4.13
Texinfo-4.8
Util-linux-2.12r
3. The configure error while attempting to configure Glibc.
Quote:
root:/sources/glibc-build# ../glibc-2.4/configure --prefix=/usr
--disable-profile --enable-add-ons --enable-kernel=2.6.0
--libexecdir=/usr/lib/glibc checking build system type...
i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
configure: running configure fragment for add-on nptl
checking sysdep dirs... sysdeps/i386/elf
nptl/sysdeps/unix/sysv/linux/i386/i686
nptl/sysdeps/unix/sysv/linux/i386 sysdeps/unix/sysv/linux/i386
nptl/sysdeps/unix/sysv/linux nptl/sysdeps/pthread sysdeps/pthread
sysdeps/unix/sysv/linux sysdeps/gnu sysdeps/unix/common
sysdeps/unix/mman sysdeps/unix/inet sysdeps/unix/sysv/i386
nptl/sysdeps/unix/sysv sysdeps/unix/sysv sysdeps/unix/i386
nptl/sysdeps/unix sysdeps/unix sysdeps/posix sysdeps/i386/i686/fpu
nptl/sysdeps/i386/i686 sysdeps/i386/i686 sysdeps/i386/i486
nptl/sysdeps/i386/i486 sysdeps/i386/fpu nptl/sysdeps/i386 sysdeps/i386
sysdeps/wordsize-32 sysdeps/ieee754/ldbl-96 sysdeps/ieee754/dbl-64
sysdeps/ieee754/flt-32 sysdeps/ieee754 sysdeps/generic/elf
sysdeps/generic
checking for a BSD-compatible install... /tools/bin/install -c
checking whether ln -s works... yes
checking for gcc... gcc
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking how to run the C preprocessor... gcc -E
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking whether
/tools/lib/gcc/i686-pc-linux-gnu/4.1.1/../../../../i686-pc-linux-gnu/bin/as
is GNU as... yes
checking whether
/tools/lib/gcc/i686-pc-linux-gnu/4.1.1/../../../../i686-pc-linux-gnu/bin/ld
is GNU ld... yes
checking for /tools/lib/gcc/i686-pc-linux-gnu/4.1.1/../../../../i686-pc-linux-gnu/bin/as...
/tools/lib/gcc/i686-pc-linux-gnu/4.1.1/../../../../i686-pc-linux-gnu/bin/as
checking version of
/tools/lib/gcc/i686-pc-linux-gnu/4.1.1/../../../../i686-pc-linux-gnu/bin/as...
2.17, ok
checking for /tools/lib/gcc/i686-pc-linux-gnu/4.1.1/../../../../i686-pc-linux-gnu/bin/ld...
/tools/lib/gcc/i686-pc-linux-gnu/4.1.1/../../../../i686-pc-linux-gnu/bin/ld
checking version of
/tools/lib/gcc/i686-pc-linux-gnu/4.1.1/../../../../i686-pc-linux-gnu/bin/ld...
2.17, ok
checking for pwd... /bin/pwd
checking for gcc... gcc
checking version of gcc... 4.1.1, ok
checking for gnumake... no
checking for gmake... no
checking for make... make
checking version of make... 3.80, ok
checking for gnumsgfmt... no
checking for gmsgfmt... no
checking for msgfmt... msgfmt
checking version of msgfmt... 0.14.5, ok
checking for makeinfo... makeinfo
checking version of makeinfo... 4.8, ok
checking for sed... sed
checking version of sed... 4.1.5, ok
checking for autoconf... no
configure: WARNING:
*** These auxiliary programs are missing or incompatible versions: autoconf
*** some features will be disabled.
*** Check the INSTALL file for required versions.
checking whether ranlib is necessary... no
checking LD_LIBRARY_PATH variable... ok
checking whether GCC supports -static-libgcc... -static-libgcc
checking for bash... /bin/sh
checking for gawk... gawk
checking for perl... /usr/bin/perl
checking for install-info... /tools/bin/install-info
checking for bison... no
checking for signed size_t type... no
checking for libc-friendly stddef.h... no
checking whether we need to use -P to assemble .S files... no
checking whether .text pseudo-op must be used... yes
checking for assembler global-symbol directive... .globl
checking for .set assembler directive... yes
checking for assembler .type directive prefix... @
checking for .symver assembler directive... yes
checking for ld --version-script... yes
checking for .previous assembler directive... yes
checking for .protected and .hidden assembler directive... yes
checking whether __attribute__((visibility())) is supported... yes
checking for broken __attribute__((visibility()))... no
checking for broken __attribute__((alias()))... no
checking whether to put _rtld_local into .sdata section... no
checking for .preinit_array/.init_array/.fini_array support... yes
checking for libunwind-support in compiler... no
checking for -z nodelete option... yes
checking for -z nodlopen option... yes
checking for -z initfirst option... yes
checking for -z relro option... yes
checking for -Bgroup option... yes
checking for libgcc_s suffix...
checking for --as-needed option... yes
checking whether --noexecstack is desirable for .S files... yes
checking for -z combreloc... yes
checking for -z execstack... yes
checking for -fpie... yes
checking for -fno-toplevel-reorder... no
checking for -fstack-protector... yes
checking whether cc puts quotes around section names... no
checking for assembler .weak directive... yes
checking whether CFI directives are supported... yes
checking for ld --no-whole-archive... yes
checking for gcc -fexceptions... yes
checking for __builtin_expect... yes
checking for __builtin_memset... no
checking for redirection of built-in functions... yes
checking for __thread... yes
checking for tls_model attribute... yes
checking for libgd... no
checking for is_selinux_enabled in -lselinux... no
checking for egrep... grep -E
checking for ANSI C header files... no
checking for sys/types.h... no
checking for sys/stat.h... no
checking for stdlib.h... no
checking for string.h... no
checking for memory.h... no
checking for strings.h... no
checking for inttypes.h... no
checking for stdint.h... no
checking for unistd.h... no
checking for long double... no
checking size of long double... 0
running configure fragment for sysdeps/i386/elf
checking for i386 TLS support... yes
running configure fragment for nptl/sysdeps/pthread
checking for forced unwind support... yes
checking for C cleanup handling... no
configure: error: the compiler must support C cleanup handling
root:/sources/glibc-build#
4. The last section of the config.log for Glibc that contains the error.
Code:
## ----------- ##
## confdefs.h. ##
## ----------- ##

#define ASM_GLOBAL_DIRECTIVE .globl
#define ASM_TYPE_DIRECTIVE_PREFIX @
#define DO_VERSIONING 1
#define HAVE_ASM_CFI_DIRECTIVES 1
#define HAVE_ASM_PREVIOUS_DIRECTIVE 1
#define HAVE_ASM_SET_DIRECTIVE 1
#define HAVE_ASM_WEAK_DIRECTIVE 1
#define HAVE_BUILTIN_EXPECT 1
#define HAVE_BUILTIN_REDIRECTION 1
#define HAVE_FORCED_UNWIND 1
#define HAVE_HIDDEN 1
#define HAVE_LIBIDN 1
#define HAVE_PROTECTED 1
#define HAVE_TLS_MODEL_ATTRIBUTE 1
#define HAVE_TLS_SUPPORT 1
#define HAVE_VISIBILITY_ATTRIBUTE 1
#define HAVE_Z_COMBRELOC 1
#define HAVE_Z_RELRO 1
#define HAVE___THREAD 1
#define NO_UNDERSCORES 1
#define PACKAGE_BUGREPORT "glibc"
#define PACKAGE_NAME "GNU C Library"
#define PACKAGE_STRING "GNU C Library (see version.h)"
#define PACKAGE_TARNAME "c-library"
#define PACKAGE_VERSION "(see version.h)"
#define PI_STATIC_AND_HIDDEN 1
#define SIZEOF_LONG_DOUBLE 0
#define USE_REGPARMS 1
#endif
#ifdef __cplusplus
void exit (int);

configure: exit 1
I hope someone knows what in the world is happening here.

Thanks in advance,
AxXium
 
Old 06-28-2006, 04:53 PM   #2
Daws
Member
 
Registered: May 2006
Location: UK
Distribution: Debian, Linux From Scratch
Posts: 416
Blog Entries: 1

Rep: Reputation: 30
Fortunately it's not an unheard of problem, unfortunately you are using glibc 2.4, a quick google shows it has cropped up in the lfs mailing lists a few times. More often than not it is the usual suspects: a typo, using a problematic host distro etc etc. The answer to your problem is likely beyond the lfs mailing lists as glibc 2.4 is not even in the development branch yet.
In general you are fairly safe to use newer versions of the packages but be very careful when using newer glibc, gcc or binutils all I can suggest is
1. Look for available patches (good you have)
and
2. When using sed commands, check that changes have actually been made correctly (if at all). This one caught me a few times...

If you really can't seem to solve the problem and have tried everything besides start over, try disabling the configure sanity checks and see what happens. I really do not recommend this.

Good Luck.
PS I recently built a glibc 2.4 system. I ran into a minor problem during the make process to do with the libidn addon. It seems tar -xf ../glibc-libidn-2.4.tar.bz2 puts all the files into a directory called glibc-libidn-2.4/ while the rest of glibc expects libidn to be in the libidn/ directory. make went tits-up as you can imagine: error error error. Keep your eyes open for this.
 
Old 06-28-2006, 05:15 PM   #3
AxXium
Zenwalk Admin
 
Registered: May 2005
Location: Louisiana, U.S.A.
Distribution: Zenwalk Gnu/Linux
Posts: 258

Original Poster
Rep: Reputation: 31
Thanks for the "libidn" tip and others. I backed up the temp system before proceeding. So it's not like starting from scratch (Pun intended).

I'm determined to get it to work and it really is quite fun.

Going to keep an eye on those typos.

Things were going well until "chroot"...

-AxXium
 
Old 06-28-2006, 05:35 PM   #4
Daws
Member
 
Registered: May 2006
Location: UK
Distribution: Debian, Linux From Scratch
Posts: 416
Blog Entries: 1

Rep: Reputation: 30
Quote:
Things were going well until "chroot"...
This should become the new motto for the lfs project. I know exactly what you mean when I start messing with package versions it usually requires divine intervention to get past chapter 6.10.
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Bookmark cleanup MBH LQ Suggestions & Feedback 2 05-19-2006 09:39 AM
Kernel Cleanup RedShirt Linux - Software 4 01-10-2006 06:16 AM
6.11 make glibc - must support C cleanup handling sundialsvcs Linux From Scratch 4 09-20-2005 03:28 PM
checking glibc subversion... chrismiceli Linux - General 0 07-26-2003 11:33 PM
/tmp cleanup Stephanie Linux - General 2 07-27-2001 03:17 PM


All times are GMT -5. The time now is 02:28 PM.

Main Menu
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
identi.ca: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration