[ucLibc/buildroot compile problem]: Conflicting types for posix_fadvise

Rob uclibc at paypc.com
Wed Oct 26 04:47:01 UTC 2005


Hrm.... perhaps one of you more experienced buildroot/uclibc folks can set me
straight.  I've been trying [unsuccessfully] to build a nice little embedded
root for myself to deploy in a diskless/fanless little telephony server
project for my home.

I've up until now used "prebuilt" roots like "Freevo" (done for Myth), but I
want more up to date uclibc's and other bits.

My build OS/environment:

Slackware 10.1 based, 2.6.13.4 kernel, gcc-3.3.5, binutils 2.15.92.0.2 20040927.

OK: My attempts thus far have been with:

buildroot-20051023 (snapshot)
buildroot-20051025 (snapshot)

I've tried both gcc-3.4.4 and gcc-3.3.6 compilers selected for the toolchain.
 Same result.

I have a dedicated directory, and my config file is as follows (only
non-commented lines included):

==============================================

BR2_x86_i686=y
BR2_ARCH="i686"
BR2_ENDIAN="LITTLE"
BR2_KERNEL_HEADERS_2_6_12=y
BR2_WGET="wget --passive-ftp -nd"
BR2_SVN="svn co"
BR2_DL_DIR="$(BASE_DIR)/dl"
BR2_SOURCEFORGE_MIRROR="optusnet"
BR2_STAGING_DIR="$(BUILD_DIR)/staging_dir"
BR2_TOPDIR_PREFIX=""
BR2_TOPDIR_SUFFIX=""
BR2_JLEVEL=2
BR2_UCLIBC_VERSION_SNAPSHOT=y
BR2_PTHREADS=y
BR2_PTHREADS_NATIVE=y
BR2_BINUTILS_VERSION_2_16_1=y
BR2_GCC_VERSION_3_3_6=y
BR2_GCC_VERSION="3.3.6"
BR2_CCACHE=y
BR2_LARGEFILE=y
BR2_PACKAGE_BUSYBOX=y
BR2_PACKAGE_BUSYBOX_SNAPSHOT=y
BR2_PACKAGE_BASH=y
BR2_PACKAGE_BZIP2=y
BR2_PACKAGE_COREUTILS=y
BR2_PACKAGE_FINDUTILS=y
BR2_PACKAGE_GREP=y
BR2_PACKAGE_TAR=y
BR2_PACKAGE_BERKELEYDB=y
BR2_PACKAGE_DNSMASQ=y
BR2_PACKAGE_E2FSPROGS=y
BR2_PACKAGE_FILE=y
BR2_PACKAGE_GZIP=y
BR2_PACKAGE_IOSTAT=y
BR2_PACKAGE_IPROUTE2=y
BR2_PACKAGE_IPTABLES=y
BR2_PACKAGE_LIBPNG=y
BR2_PACKAGE_LIBSYSFS=y
BR2_PACKAGE_LTT=y
BR2_PACKAGE_MKDOSFS=y
BR2_PACKAGE_MODULE_INIT_TOOLS=y
BR2_PACKAGE_NANO=y
BR2_PACKAGE_NCURSES=y
BR2_PACKAGE_NETKITBASE=y
BR2_PACKAGE_NTP=y
BR2_PACKAGE_OPENSSH=y
BR2_PACKAGE_OPENSSL=y
BR2_PACKAGE_PCIUTILS=y
BR2_PACKAGE_PORTMAP=y
BR2_PACKAGE_PROCPS=y
BR2_READLINE=y
BR2_PACKAGE_STRACE=y
BR2_PACKAGE_SYSKLOGD=y
BR2_PACKAGE_TINYLOGIN=y
BR2_PACKAGE_UDEV=y
BR2_PACKAGE_UTIL-LINUX=y
BR2_PACKAGE_WGET=y
BR2_PACKAGE_WHICH=y
BR2_PACKAGE_ZLIB=y
BR2_TARGET_ROOTFS_CRAMFS=y
BR2_TARGET_OPTIMIZATION="-pipe -O2 -march=pentium3 -mcpu=pentium3"
BR2_PACKAGE_BUSYBOX_CONFIG="package/busybox/busybox.config"

==============================================

My error:

make[5]: Entering directory
`/buildroot/buildroot/toolchain_build_i686/uClibc/libc/sysdeps/linux/common'
/buildroot/buildroot/build_i686/staging_dir/bin/i686-linux-uclibc-gcc  -Wall
-Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing  -march=pentium3 
-fno-builtin -nostdinc -D_LIBC -I../../../../include -I. 
-mpreferred-stack-boundary=2 -falign-jumps=0 -falign-loops=0 -Os    -isystem
/buildroot/buildroot/build_i686/staging_dir/lib/gcc-lib/i686-linux-uclibc/3.3.6/include
-DNDEBUG -fPIC -c posix_fadvise.c -o posix_fadvise.o
posix_fadvise.c:22: error: conflicting types for `posix_fadvise'
./../../../include/fcntl.h:141: error: previous declaration of `posix_fadvise'
make[5]: *** [posix_fadvise.o] Error 1

Any clues where to even start debugging this build fault?  I did some quick
tests with gcc -E to see the preprocessor's output, and it looked like the
right include files were brought in.

Thanks for such a wonderful library/project, guys.

If someone could provide a known flawlessly buildable combination of
kernel/uclibc/etc for i386/pentium-or-pentium3, that would be great, then I
could add on and make changes one at a time until I break it again, etc.

Cheers!

=R=





More information about the uClibc mailing list