gcc 초벌설치까지는 잘 동작하고, glibc를 하려고 하면, 다음과 같은 에러가
발생 됩니다. 이것은 gcc 3.2를 시도 할때(실패하여 3.3으로)도 나타났던 문
제 입니다.

왜 다음과 같은 일이 발생 할까요? 분명히 with-header를 주었는데 말입니다.

[root@localhost glibcbuild]# CC=arm-linux-gcc ../glibc-2.3.2/configure --
target=arm-linux --build=i686-pc-linux-gnu --with-
headers=/project/toolchain/linux-2.4.22/include --enable-add-ons --
enable-shared --prefix=/project/toolchain/usr --with-cpu=strongarm --
without-fp --enable-kernel=2.4.22


checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking sysdep dirs... sysdeps/i386/elf
linuxthreads/sysdeps/unix/sysv/linux/i386
linuxthreads/sysdeps/unix/sysv/linux linuxthreads/sysdeps/pthread
sysdeps/pthread linuxthreads/sysdeps/unix/sysv linuxthreads/sysdeps/unix
linuxthreads/sysdeps/i386/i686 linuxthreads/sysdeps/i386
sysdeps/unix/sysv/linux/i386 sysdeps/unix/sysv/linux sysdeps/gnu
sysdeps/unix/common sysdeps/unix/mman sysdeps/unix/inet
sysdeps/unix/sysv/i386 sysdeps/unix/sysv sysdeps/unix/i386 sysdeps/unix
sysdeps/posix sysdeps/i386/i686 sysdeps/i386/i486 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... /usr/bin/install -c
checking whether ln -s works... yes
checking for pwd... /bin/pwd
checking for gcc... arm-linux-gcc
checking version of arm-linux-gcc... 3.3, ok
checking for gnumake... no
checking for gmake... gmake
checking version of gmake... 3.79.1, ok
checking for gnumsgfmt... no
checking for gmsgfmt... no
checking for msgfmt... msgfmt
checking version of msgfmt... 0.11.4, ok
checking for makeinfo... makeinfo
checking version of makeinfo... 4.3, ok
checking for sed... sed
checking version of sed... 4.0.5, ok
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether arm-linux-gcc accepts -g... yes
checking for arm-linux-gcc option to accept ANSI C... none needed
checking how to run the C preprocessor... arm-linux-gcc -E
checking whether /home/blueaqua/devel/falinux/utils/usr/lib/gcc-lib/arm-
linux/3.3/../../../../arm-linux/bin/as is GNU as... yes
checking whether /home/blueaqua/devel/falinux/utils/usr/lib/gcc-lib/arm-
linux/3.3/../../../../arm-linux/bin/ld is GNU ld... yes
checking for /home/blueaqua/devel/falinux/utils/usr/lib/gcc-lib/arm-
linux/3.3/../../../../arm-
linux/bin/as... /home/blueaqua/devel/falinux/utils/usr/lib/gcc-lib/arm-
linux/3.3/../../../../arm-linux/bin/as
checking version of /home/blueaqua/devel/falinux/utils/usr/lib/gcc-
lib/arm-linux/3.3/../../../../arm-linux/bin/as... 2.14.90.0.6, ok
checking for /home/blueaqua/devel/falinux/utils/usr/lib/gcc-lib/arm-
linux/3.3/../../../../arm-
linux/bin/ld... /home/blueaqua/devel/falinux/utils/usr/lib/gcc-lib/arm-
linux/3.3/../../../../arm-linux/bin/ld
checking version of /home/blueaqua/devel/falinux/utils/usr/lib/gcc-
lib/arm-linux/3.3/../../../../arm-linux/bin/ld... 2.14.90.0.6, ok
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... /sbin/install-info
checking for old Debian install-info... no
checking for bison... no
checking for signed size_t type... no
checking for libc-friendly stddef.h... yes
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... no
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... yes
checking for .preinit_array/.init_array/.fini_array support... yes
checking for -z nodelete option... yes
checking for -z nodlopen option... yes
checking for -z initfirst option... yes
checking for -Bgroup option... yes
checking for -z combreloc... yes
checking whether cc puts quotes around section names... no
checking for assembler .weak directive... yes
checking for ld --no-whole-archive... yes
checking for gcc -fexceptions... yes
checking for DWARF2 unwind info support... yes
checking for __builtin_expect... yes
checking for __builtin_memset... no
checking for local label subtraction... yes
checking for __thread... no
checking for libgd... 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 ../glibc-2.3.2/sysdeps/i386/elf
running configure fragment for ../glibc-2.3.2/sysdeps/pthread
running configure fragment for ../glibc-2.3.2/sysdeps/unix/sysv/linux
checking for egrep... (cached) grep -E
checking installed Linux kernel header files... TOO OLD!
configure: error: GNU libc requires kernel header files from
Linux 2.0.10 or later to be installed before configuring.
The kernel header files are found usually in /usr/include/asm and
/usr/include/linux; make sure these directories use files from
Linux 2.0.10 or later. This check uses , so
make sure that file was built correctly when installing the kernel header
files. To use kernel headers not from /usr/include/linux, use the
configure option --with-headers.



그리고 다음은 config.log 의 일부 입니다.
configure:5941: result: no
configure:5904: checking for stdint.h
configure:5921: arm-linux-gcc -c -g -O2 conftest.c >&5
configure:5933:19: stdio.h: No such file or directory
configure:5968:20: stdint.h: No such file or directory
configure:5924: $? = 1
configure: failed program was:
| #line 5909 "configure"
| /* confdefs.h. */
|
| #define PACKAGE_NAME "GNU C Library"
| #define PACKAGE_TARNAME "c-library"
| #define PACKAGE_VERSION "(see version.h)"
| #define PACKAGE_STRING "GNU C Library (see version.h)"
| #define PACKAGE_BUGREPORT "glibc"
| #define USE_REGPARMS 1
| #define ASM_GLOBAL_DIRECTIVE .globl
| #define ASM_TYPE_DIRECTIVE_PREFIX %
| #define DO_VERSIONING 1
| #define HAVE_ASM_PREVIOUS_DIRECTIVE 1
| #define HAVE_PROTECTED 1
| #define HAVE_HIDDEN 1
| #define HAVE_VISIBILITY_ATTRIBUTE 1
| #define HAVE_SDATA_SECTION 1
| #define HAVE_INITFINI_ARRAY 1
| #define HAVE_Z_COMBRELOC 1
| #define NO_UNDERSCORES 1
| #define HAVE_ASM_WEAK_DIRECTIVE 1
| #define HAVE_DWARF2_UNWIND_INFO 1
| #define HAVE_BUILTIN_EXPECT 1
| #define HAVE_SUBTRACT_LOCAL_LABELS 1
| /* end confdefs.h. */
| #include
| #if HAVE_SYS_TYPES_H
| # include
| #endif
| #if HAVE_SYS_STAT_H
| # include
| #endif
| #if STDC_HEADERS
| # include
| # include
| #else
| # if HAVE_STDLIB_H
| # include
| # endif
| #endif
| #if HAVE_STRING_H
| # if !STDC_HEADERS && HAVE_MEMORY_H
| # include
| # endif
| # include
| #endif
| #if HAVE_STRINGS_H
| # include
| #endif
| #if HAVE_INTTYPES_H
| # include
| #else
| # if HAVE_STDINT_H
| # include
| # endif
| #endif
| #if HAVE_UNISTD_H
| # include
| #endif
|
| #include
configure:5941: result: no
configure:5904: checking for unistd.h
configure:5921: arm-linux-gcc -c -g -O2 conftest.c >&5
configure:5933:19: stdio.h: No such file or directory
configure:5968:20: unistd.h: No such file or directory
configure:5924: $? = 1
configure: failed program was:
| #line 5909 "configure"
| /* confdefs.h. */
|
| #define PACKAGE_NAME "GNU C Library"
| #define PACKAGE_TARNAME "c-library"
| #define PACKAGE_VERSION "(see version.h)"
| #define PACKAGE_STRING "GNU C Library (see version.h)"
| #define PACKAGE_BUGREPORT "glibc"
| #define USE_REGPARMS 1
| #define ASM_GLOBAL_DIRECTIVE .globl
| #define ASM_TYPE_DIRECTIVE_PREFIX %
| #define DO_VERSIONING 1
| #define HAVE_ASM_PREVIOUS_DIRECTIVE 1
| #define HAVE_PROTECTED 1
| #define HAVE_HIDDEN 1
| #define HAVE_VISIBILITY_ATTRIBUTE 1
| #define HAVE_SDATA_SECTION 1
| #define HAVE_INITFINI_ARRAY 1
| #define HAVE_Z_COMBRELOC 1
| #define NO_UNDERSCORES 1
| #define HAVE_ASM_WEAK_DIRECTIVE 1
| #define HAVE_DWARF2_UNWIND_INFO 1
| #define HAVE_BUILTIN_EXPECT 1
| #define HAVE_SUBTRACT_LOCAL_LABELS 1
| /* end confdefs.h. */
| #include
| #if HAVE_SYS_TYPES_H
| # include
| #endif
| #if HAVE_SYS_STAT_H
| # include
| #endif
| #if STDC_HEADERS
| # include
| # include
| #else
| # if HAVE_STDLIB_H
| # include
| # endif
| #endif
| #if HAVE_STRING_H
| # if !STDC_HEADERS && HAVE_MEMORY_H
| # include
| # endif
| # include
| #endif
| #if HAVE_STRINGS_H
| # include
| #endif
| #if HAVE_INTTYPES_H
| # include
| #else
| # if HAVE_STDINT_H
| # include
| # endif
| #endif
| #if HAVE_UNISTD_H
| # include
| #endif
|
| #include
configure:5941: result: no
configure:5953: checking for long double
configure:5978: arm-linux-gcc -c -g -O2 conftest.c >&5
configure:5982:19: stdio.h: No such file or directory
configure:5981: $? = 1
configure: failed program was:
| #line 5958 "configure"
| /* confdefs.h. */
|
| #define PACKAGE_NAME "GNU C Library"
| #define PACKAGE_TARNAME "c-library"
| #define PACKAGE_VERSION "(see version.h)"
| #define PACKAGE_STRING "GNU C Library (see version.h)"
| #define PACKAGE_BUGREPORT "glibc"
| #define USE_REGPARMS 1
| #define ASM_GLOBAL_DIRECTIVE .globl
| #define ASM_TYPE_DIRECTIVE_PREFIX %
| #define DO_VERSIONING 1
| #define HAVE_ASM_PREVIOUS_DIRECTIVE 1
| #define HAVE_PROTECTED 1
| #define HAVE_HIDDEN 1
| #define HAVE_VISIBILITY_ATTRIBUTE 1
| #define HAVE_SDATA_SECTION 1
| #define HAVE_INITFINI_ARRAY 1
| #define HAVE_Z_COMBRELOC 1
| #define NO_UNDERSCORES 1
| #define HAVE_ASM_WEAK_DIRECTIVE 1
| #define HAVE_DWARF2_UNWIND_INFO 1
| #define HAVE_BUILTIN_EXPECT 1
| #define HAVE_SUBTRACT_LOCAL_LABELS 1
| /* end confdefs.h. */
| #include
| #if HAVE_SYS_TYPES_H
| # include
| #endif
| #if HAVE_SYS_STAT_H
| # include
| #endif
| #if STDC_HEADERS
| # include
| # include
| #else
| # if HAVE_STDLIB_H
| # include
| # endif
| #endif
| #if HAVE_STRING_H
| # if !STDC_HEADERS && HAVE_MEMORY_H
| # include
| # endif
| # include
| #endif
| #if HAVE_STRINGS_H
| # include
| #endif
| #if HAVE_INTTYPES_H
| # include
| #else
| # if HAVE_STDINT_H
| # include
| # endif
| #endif
| #if HAVE_UNISTD_H
| # include
| #endif
| int
| main ()
| {
| if ((long double *) 0)
| return 0;
| if (sizeof (long double))
| return 0;
| ;
| return 0;
| }
configure:5998: result: no
configure:6001: checking size of long double
configure:6307: result: 0
configure:6335: result: running configure fragment for ../glibc-
2.3.2/sysdeps/i386/elf
configure:6335: result: running configure fragment for ../glibc-
2.3.2/sysdeps/pthread
configure:6335: result: running configure fragment for ../glibc-
2.3.2/sysdeps/unix/sysv/linux
configure:25: checking for egrep
configure:35: result: grep -E
configure:40: checking installed Linux kernel header files
configure:46:27: linux/version.h: No such file or directory
configure:62: result: TOO OLD!
configure:72: error: GNU libc requires kernel header files from
Linux 2.0.10 or later to be installed before configuring.
The kernel header files are found usually in /usr/include/asm and
/usr/include/linux; make sure these directories use files from
Linux 2.0.10 or later. This check uses , so
make sure that file was built correctly when installing the kernel header
files. To use kernel headers not from /usr/include/linux, use the
configure option --with-headers.