Bug 1807

Summary: LZMA 4.32.7, Required header file(s) are missing.
Product: buildroot Reporter: Peter Katzmann <peter.katzmann>
Component: OtherAssignee: unassigned
Status: RESOLVED WONTFIX    
Severity: blocker CC: buildroot
Priority: P5    
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Host: Target:
Build:
Attachments: buildroot config

Description Peter Katzmann 2010-05-21 13:23:03 UTC
Buildroot snapshot 21-05-2010

Building failed due to errore  Required header file(s) are missing.
Comment 1 Peter Katzmann 2010-05-21 14:05:35 UTC
Created attachment 1765 [details]
buildroot config
Comment 2 Peter Katzmann 2010-05-21 14:09:07 UTC
  $ ./configure --target=armeb-linux --host=armeb-linux --build=x86_64-unknown-linux-gnu --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc --disable-gtk-doc --disable-nls --disable-ipv6 --disable-debug

## --------- ##
## Platform. ##
## --------- ##

hostname = pet
uname -m = x86_64
uname -r = 2.6.31.12-0.2-desktop
uname -s = Linux
uname -v = #1 SMP PREEMPT 2010-03-16 21:25:39 +0100

/usr/bin/uname -p = unknown
/bin/uname -X     = unknown

/bin/arch              = x86_64
/usr/bin/arch -k       = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo      = unknown
/bin/machine           = unknown
/usr/bin/oslevel       = unknown
/bin/universe          = unknown


configure:20322: result: no
configure:20326: checking utime.h presence
configure:20341: /usr2/new/Source-ast162/build_env/buildroot/project_build_armeb/../toolchain/usr/bin/armeb-unknown-linux-uclibc-cpp -Os -pipe -Os  -mtune=xscale -march=armv5te -mabi=apcs-gnu -msoft-float -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr2/new/Source-ast162/build_env/buildroot/project_build_armeb/../toolchain/usr/include -I/usr2/new/Source-ast162/build_env/buildroot/project_build_armeb/../toolchain/include --sysroot=/usr2/new/Source-ast162/build_env/buildroot/project_build_armeb/../toolchain/ -isysroot /usr2/new/Source-ast162/build_env/buildroot/project_build_armeb/../toolchain  conftest.c
conftest.c:30:19: error: utime.h: No such file or directory
configure:20348: $? = 1
configure: failed program was:
| /* confdefs.h.  */
| #define PACKAGE_NAME "LZMA"
| #define PACKAGE_TARNAME "lzma"
| #define PACKAGE_VERSION "4.32.7"
| #define PACKAGE_STRING "LZMA 4.32.7"
| #define PACKAGE_BUGREPORT "lasse.collin@tukaani.org"
| #define PACKAGE "lzma"
| #define VERSION "4.32.7"
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_DLFCN_H 1
| #define STDC_HEADERS 1
| #define HAVE_FCNTL_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_LIMITS_H 1
| #define HAVE_STDDEF_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_SYS_TIME_H 1
| #define HAVE_UNISTD_H 1
| /* end confdefs.h.  */
| #include <utime.h>
configure:20362: result: no
configure:20395: checking for utime.h
configure:20404: result: no
configure:20415: error: Required header file(s) are missing.
Comment 3 Peter Korsgaard 2010-06-03 21:28:06 UTC
Strange, it builds here on another arm config. I cannot build your config as you forgot to attach your uclibc + busybox configs:

BR2_UCLIBC_CONFIG="$(BUILD_DIR)/../../configs/uclibc.config-pet"
BR2_PACKAGE_BUSYBOX_CONFIG="$(BUILD_DIR)/../../configs/busybox26"
Comment 4 Thomas Petazzoni 2010-06-05 15:28:58 UTC
I strongly think that the problem is that you compiled your uClibc without the UCLIBC_SUSV4_LEGACY option set to yes. When this option isn't set, the header file utime.h doesn't get installed (and the corresponding functions are not implemented in uClibc).

Our default configuration file for uClibc 0.9.31 (toolchain/uClibc/uClibc-0.9.31.config) enables this option. However, if you built an uClibc configuration file yourself, by default, uClibc disables this option.

It is definitely not possible in Buildroot to handle all possible combinations of C library configurations (we handle a few modifications like locale support or not, wide char support or not, IPv6 support or not, but we can't handle all of them).

So, I don't realistically see what we can do at the Buildroot level to fix this, except asking you to fix your uClibc configuration file :-)
Comment 5 Peter Katzmann 2010-06-07 10:27:48 UTC
Problem was, as guessed, the old uclibc config.
After reworking this everything works fine