* [Buildroot] uClibc missing limits.h
@ 2008-06-23 12:22 Hinko Kocevar
2008-06-23 13:16 ` Bernhard Fischer
0 siblings, 1 reply; 10+ messages in thread
From: Hinko Kocevar @ 2008-06-23 12:22 UTC (permalink / raw)
To: buildroot
Hi,
I've found a way for uClibc to find headers that are not in the $(shell $CC -print-file-name=include), but in $(shell $CC -print-file-name=include)-fixed.
According to http://sourceware.org/ml/libc-alpha/2007-03/msg00017.html LIBC should also look in other gcc provided header directories (eg. include-fixed) instead only relying on 'include' to contain all correct headers.
Below is uClibc patch for this (tested on cris).
Best regards,
Hinko
--
?ETRTA POT, d.o.o., Kranj
Planina 3
4000 Kranj
Slovenia, Europe
Tel. +386 (0) 4 280 66 03
E-mail: hinko.kocevar at cetrtapot.si
Http: www.cetrtapot.si
-------------- next part --------------
A non-text attachment was scrubbed...
Name: uClibc-0.9.29-use-gcc-include-fixed-dir.patch
Type: text/x-patch
Size: 461 bytes
Desc: not available
Url : http://busybox.net/lists/buildroot/attachments/20080623/85c66671/attachment.bin
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] uClibc missing limits.h
2008-06-23 12:22 [Buildroot] uClibc missing limits.h Hinko Kocevar
@ 2008-06-23 13:16 ` Bernhard Fischer
2008-06-24 11:14 ` Hinko Kocevar
0 siblings, 1 reply; 10+ messages in thread
From: Bernhard Fischer @ 2008-06-23 13:16 UTC (permalink / raw)
To: buildroot
On Mon, Jun 23, 2008 at 02:22:25PM +0200, Hinko Kocevar wrote:
>Hi,
>
>I've found a way for uClibc to find headers that are not in the $(shell $CC -print-file-name=include), but in $(shell $CC -print-file-name=include)-fixed.
>According to http://sourceware.org/ml/libc-alpha/2007-03/msg00017.html LIBC should also look in other gcc provided header directories (eg. include-fixed) instead only relying on 'include' to contain all correct headers.
>
>Below is uClibc patch for this (tested on cris).
Well, that's not really correct since the default search path already
should to be
$target_triple/$ver/include \
$target_triple/$ver/include-fixed \
And apart from that you would not get away with just doing this for uClibc..
Please paste the failing "cross-gcc -v" invocation that fails to find
the include-fixed.
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] uClibc missing limits.h
2008-06-23 13:16 ` Bernhard Fischer
@ 2008-06-24 11:14 ` Hinko Kocevar
2008-07-02 8:59 ` Hinko Kocevar
0 siblings, 1 reply; 10+ messages in thread
From: Hinko Kocevar @ 2008-06-24 11:14 UTC (permalink / raw)
To: buildroot
Bernhard Fischer wrote:
> On Mon, Jun 23, 2008 at 02:22:25PM +0200, Hinko Kocevar wrote:
>> Hi,
>>
>> I've found a way for uClibc to find headers that are not in the $(shell $CC -print-file-name=include), but in $(shell $CC -print-file-name=include)-fixed.
>> According to http://sourceware.org/ml/libc-alpha/2007-03/msg00017.html LIBC should also look in other gcc provided header directories (eg. include-fixed) instead only relying on 'include' to contain all correct headers.
>>
>> Below is uClibc patch for this (tested on cris).
>
> Well, that's not really correct since the default search path already
> should to be
> $target_triple/$ver/include \
> $target_triple/$ver/include-fixed \
>
> And apart from that you would not get away with just doing this for uClibc..
>
> Please paste the failing "cross-gcc -v" invocation that fails to find
> the include-fixed.
$ cris-linux-uclibc-gcc -v
Using built-in specs.
Target: cris-linux-uclibc
Configured with: /work/stage/git.br/toolchain_build_cris/gcc-4.3.1/configure --prefix=/usr --build=i386-pc-linux-gnu --host=i386-pc-linux-gnu --target=cris-linux-uclibc --enable-languages=c --with-sysroot=/work/stage/git.br/build_cris/staging_dir --with-build-time-tools=/work/stage/git.br/build_cris/staging_dir/usr/cris-linux-uclibc/bin --disable-__cxa_atexit --enable-target-optspace --with-gnu-ld --enable-shared --with-gmp=/work/stage/git.br/toolchain_build_cris/gmp --with-mpfr=/work/stage/git.br/toolchain_build_cris/mpfr --disable-nls --enable-threads --disable-multilib --disable-largefile --disable-libssp --disable-libssp --disable-libmudflap --disable-libgomp
Thread model: posix
gcc version 4.3.1 (GCC)
Gcc include directories should are located in .../lib/include, right:
$ cris-linux-uclibc-gcc -print-search-dirs
install: /work/stage/git.br/build_cris/staging_dir/usr/bin/../lib/gcc/cris-linux-uclibc/4.3.1/
programs: =/work/stage/git.br/build_cris/staging_dir/usr/bin/../libexec/gcc/cris-linux-uclibc/4.3.1/:/work/stage/git.br/build_cris/staging_dir/usr/bin/../libexec/gcc/:/work/stage/git.br/build_cris/staging_dir/usr/bin/../lib/gcc/cris-linux-uclibc/4.3.1/../../../../cris-linux-uclibc/bin/cris-linux-uclibc/4.3.1/:/work/stage/git.br/build_cris/staging_dir/usr/bin/../lib/gcc/cris-linux-uclibc/4.3.1/../../../../cris-linux-uclibc/bin/
libraries: =/work/stage/git.br/build_cris/staging_dir/usr/bin/../lib/gcc/cris-linux-uclibc/4.3.1/:/work/stage/git.br/build_cris/staging_dir/usr/bin/../lib/gcc/:/work/stage/git.br/build_cris/staging_dir/usr/bin/../lib/gcc/cris-linux-uclibc/4.3.1/../../../../cris-linux-uclibc/lib/cris-linux-uclibc/4.3.1/:/work/stage/git.br/build_cris/staging_dir/usr/bin/../lib/gcc/cris-linux-uclibc/4.3.1/../../../../cris-linux-uclibc/lib/:/work/stage/git.br/build_cris/staging_dir/lib/cris-linux-uclibc/4.3.1/:/work/stage/git.br/build_cris/staging_dir/lib/:/work/stage/git.br/build_cris/staging_dir/usr/lib/cris-linux-uclibc/4.3.1/:/work/stage/git.br/build_cris/staging_dir/usr/lib/
I can't see no include-fixed, only include is found in the output of gcc -print-search-dirs...
$ cat /tmp/dirs
/work/stage/git.br/build_cris/staging_dir/usr/bin/../lib/gcc/cris-linux-uclibc/4.3.1/
/work/stage/git.br/build_cris/staging_dir/usr/bin/../lib/gcc/
/work/stage/git.br/build_cris/staging_dir/usr/bin/../lib/gcc/cris-linux-uclibc/4.3.1/../../../../cris-linux-uclibc/lib/cris-linux-uclibc/4.3.1/
/work/stage/git.br/build_cris/staging_dir/usr/bin/../lib/gcc/cris-linux-uclibc/4.3.1/../../../../cris-linux-uclibc/lib/
/work/stage/git.br/build_cris/staging_dir/lib/cris-linux-uclibc/4.3.1/
/work/stage/git.br/build_cris/staging_dir/lib/
/work/stage/git.br/build_cris/staging_dir/usr/lib/cris-linux-uclibc/4.3.1/
/work/stage/git.br/build_cris/staging_dir/usr/lib/
$ for i in `cat /tmp/dirs `; do find $i -name "*include*"; done
/work/stage/git.br/build_cris/staging_dir/usr/bin/../lib/gcc/cris-linux-uclibc/4.3.1/include
/work/stage/git.br/build_cris/staging_dir/usr/bin/../lib/gcc/cris-linux-uclibc/4.3.1/install-tools/include
/work/stage/git.br/build_cris/staging_dir/usr/bin/../lib/gcc/cris-linux-uclibc/4.3.1/include-fixed
/work/stage/git.br/build_cris/staging_dir/usr/bin/../lib/gcc/cris-linux-uclibc/4.3.1/include
/work/stage/git.br/build_cris/staging_dir/usr/bin/../lib/gcc/cris-linux-uclibc/4.3.1/install-tools/include
/work/stage/git.br/build_cris/staging_dir/usr/bin/../lib/gcc/cris-linux-uclibc/4.3.1/include-fixed
find: `/work/stage/git.br/build_cris/staging_dir/usr/bin/../lib/gcc/cris-linux-uclibc/4.3.1/../../../../cris-linux-uclibc/lib/cris-linux-uclibc/4.3.1/': No such file or directory
find: `/work/stage/git.br/build_cris/staging_dir/lib/cris-linux-uclibc/4.3.1/': No such file or directory
find: `/work/stage/git.br/build_cris/staging_dir/usr/lib/cris-linux-uclibc/4.3.1/': No such file or directory
/work/stage/git.br/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/include
/work/stage/git.br/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/install-tools/include
/work/stage/git.br/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/include-fixed
HTH,
Hinko
--
?ETRTA POT, d.o.o., Kranj
Planina 3
4000 Kranj
Slovenia, Europe
Tel. +386 (0) 4 280 66 03
E-mail: hinko.kocevar at cetrtapot.si
Http: www.cetrtapot.si
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] uClibc missing limits.h
2008-06-24 11:14 ` Hinko Kocevar
@ 2008-07-02 8:59 ` Hinko Kocevar
2008-07-02 18:22 ` Ulf Samuelsson
0 siblings, 1 reply; 10+ messages in thread
From: Hinko Kocevar @ 2008-07-02 8:59 UTC (permalink / raw)
To: buildroot
Hinko Kocevar wrote:
> Bernhard Fischer wrote:
>> On Mon, Jun 23, 2008 at 02:22:25PM +0200, Hinko Kocevar wrote:
>>> Hi,
>>>
>>> I've found a way for uClibc to find headers that are not in the $(shell $CC -print-file-name=include), but in $(shell $CC -print-file-name=include)-fixed.
>>> According to http://sourceware.org/ml/libc-alpha/2007-03/msg00017.html LIBC should also look in other gcc provided header directories (eg. include-fixed) instead only relying on 'include' to contain all correct headers.
>>>
>>> Below is uClibc patch for this (tested on cris).
>> Well, that's not really correct since the default search path already
>> should to be
>> $target_triple/$ver/include \
>> $target_triple/$ver/include-fixed \
>>
It is not if -nostdinc is in the compiler command line (see below).
>> And apart from that you would not get away with just doing this for uClibc..
>>
>> Please paste the failing "cross-gcc -v" invocation that fails to find
>> the include-fixed.
>
Here the compiler line that fails to find include-fixed:
hinkok at alala /work/stage/buildroot/toolchain_build_cris/uClibc-0.9.29 $ /work/stage/buildroot/build_cris/staging_dir/usr/bin/cris-linux-uclibc-gcc -c libc/sysdeps/linux/common/chdir.c -o libc/sysdeps/linux/common/chdir.os -include ./include/libc-symbols.h -Wall -Wstrict-prototypes -fno-strict-aliasing -fno-stack-protector -fno-builtin -nostdinc -I./include -I. --sysroot=/work/stage/buildroot/build_cris/staging_dir/ -isysroot /work/stage/buildroot/build_cris/staging_dir -I=/usr/include -Os -pipe -I/work/stage/buildroot/build_cris/staging_dir/usr/include -mtune=v10 -march=v10 -std=gnu99 -Os -funit-at-a-time -fno-tree-loop-optimize -fno-tree-dominator-opts -fno-strength-reduce -I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux/cris -I./libpthread/linuxthreads.old/sysdeps/cris -I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux -I./libpthread/linuxthreads.old/sysdeps/pthread -I./libpthread/linuxthreads.old -I./libpthread -I/work/stage/buildroot/toolchain_build_cris/linux
/include/ -isystem /work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/include -DNDEBUG -fpic -v
Using built-in specs.
Target: cris-linux-uclibc
Configured with: /work/stage/buildroot/toolchain_build_cris/gcc-4.3.1/configure --prefix=/work/stage/buildroot/build_cris/staging_dir/usr --build=i386-pc-linux-gnu --host=i386-pc-linux-gnu --target=cris-linux-uclibc --enable-languages=c --with-sysroot=/work/stage/buildroot/toolchain_build_cris/uClibc_dev/ --disable-__cxa_atexit --enable-target-optspace --with-gnu-ld --disable-shared --with-gmp=/work/stage/buildroot/toolchain_build_cris/gmp --with-mpfr=/work/stage/buildroot/toolchain_build_cris/mpfr --enable-threads --disable-multilib --disable-libssp --disable-libssp --disable-libmudflap --disable-libgomp
Thread model: posix
gcc version 4.3.1 (GCC)
COLLECT_GCC_OPTIONS='-c' '-o' 'libc/sysdeps/linux/common/chdir.os' '-include' './include/libc-symbols.h' '-Wall' '-Wstrict-prototypes' '-fno-strict-aliasing' '-fno-stack-protector' '-fno-builtin' '-nostdinc' '-I./include' '-I.' '-isysroot' '/work/stage/buildroot/build_cris/staging_dir' '-I=/usr/include' '-Os' '-pipe' '-I/work/stage/buildroot/build_cris/staging_dir/usr/include' '-mtune=v10' '-march=v10' '-std=gnu99' '-Os' '-funit-at-a-time' '-fno-tree-loop-optimize' '-fno-tree-dominator-opts' '-fno-strength-reduce' '-I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux/cris' '-I./libpthread/linuxthreads.old/sysdeps/cris' '-I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux' '-I./libpthread/linuxthreads.old/sysdeps/pthread' '-I./libpthread/linuxthreads.old' '-I./libpthread' '-I/work/stage/buildroot/toolchain_build_cris/linux/include/' '-isystem' '/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/include' '-DNDEBUG' '-fpic' '-v'
/work/stage/buildroot/build_cris/staging_dir/usr/libexec/gcc/cris-linux-uclibc/4.3.1/cc1 -quiet -nostdinc -v -I./include -I. -I=/usr/include -I/work/stage/buildroot/build_cris/staging_dir/usr/include -I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux/cris -I./libpthread/linuxthreads.old/sysdeps/cris -I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux -I./libpthread/linuxthreads.old/sysdeps/pthread -I./libpthread/linuxthreads.old -I./libpthread -I/work/stage/buildroot/toolchain_build_cris/linux/include/ -isysroot /work/stage/buildroot/build_cris/staging_dir/ -D__tune_v10 -D__CRIS_arch_tune=10 -D__arch_v10 -D__CRIS_arch_version=10 -DNDEBUG -include ./include/libc-symbols.h -isysroot /work/stage/buildroot/build_cris/staging_dir -isystem /work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/include libc/sysdeps/linux/common/chdir.c -quiet -dumpbase chdir.c -mtune=v10 -march=v10 -auxbase-strip libc/sysdeps/linux/common/chdir.os -Os -Os -Wall -W
strict-prototypes -std=gnu99 -version -fno-strict-aliasing -fno-stack-protector -fno-builtin -funit-at-a-time -fno-tree-loop-optimize -fno-tree-dominator-opts -fno-strength-reduce -fpic -o - |
/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/../../../../cris-linux-uclibc/bin/as -v --em=criself --no-underscore --pic -o libc/sysdeps/linux/common/chdir.os -
GNU assembler version 2.18 (cris-linux-uclibc) using BFD version (GNU Binutils) 2.18
ignoring duplicate directory "/work/stage/buildroot/build_cris/staging_dir/usr/include"
ignoring nonexistent directory "./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux/cris"
ignoring nonexistent directory "./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux"
#include "..." search starts here:
#include <...> search starts here:
./include
.
/work/stage/buildroot/build_cris/staging_dir/usr/include
./libpthread/linuxthreads.old/sysdeps/cris
./libpthread/linuxthreads.old/sysdeps/pthread
./libpthread/linuxthreads.old
./libpthread
/work/stage/buildroot/toolchain_build_cris/linux/include/
/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/include
End of search list.
GNU C (GCC) version 4.3.1 (cris-linux-uclibc)
compiled by GNU C version 4.1.2 (Gentoo 4.1.2 p1.1), GMP version 4.2.2, MPFR version 2.3.1.
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 8d9cd5fbd7efd311d4ba9389bc2ae5b7
In file included from ./include/sys/param.h:22,
from libc/sysdeps/linux/common/chdir.c:13:
./include/limits.h:124:26: error: limits.h: No such file or directory
Quick fix was to remove the '-nostdinc' flag, the include-fixed is also seen in the includes list:
hinkok at alala /work/stage/buildroot/toolchain_build_cris/uClibc-0.9.29 $ /work/stage/buildroot/build_cris/staging_dir/usr/bin/cris-linux-uclibc-gcc -c libc/sysdeps/linux/common/chdir.c -o libc/sysdeps/linux/common/chdir.os -include ./include/libc-symbols.h -Wall -Wstrict-prototypes -fno-strict-aliasing -fno-stack-protector -fno-builtin -I./include -I. --sysroot=/work/stage/buildroot/build_cris/staging_dir/ -isysroot /work/stage/buildroot/build_cris/staging_dir -I=/usr/include -Os -pipe -I/work/stage/buildroot/build_cris/staging_dir/usr/include -mtune=v10 -march=v10 -std=gnu99 -Os -funit-at-a-time -fno-tree-loop-optimize -fno-tree-dominator-opts -fno-strength-reduce -I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux/cris -I./libpthread/linuxthreads.old/sysdeps/cris -I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux -I./libpthread/linuxthreads.old/sysdeps/pthread -I./libpthread/linuxthreads.old -I./libpthread -I/work/stage/buildroot/toolchain_build_cris/linux/include/
-isystem /work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/include -DNDEBUG -fpic -v
Using built-in specs.
Target: cris-linux-uclibc
Configured with: /work/stage/buildroot/toolchain_build_cris/gcc-4.3.1/configure --prefix=/work/stage/buildroot/build_cris/staging_dir/usr --build=i386-pc-linux-gnu --host=i386-pc-linux-gnu --target=cris-linux-uclibc --enable-languages=c --with-sysroot=/work/stage/buildroot/toolchain_build_cris/uClibc_dev/ --disable-__cxa_atexit --enable-target-optspace --with-gnu-ld --disable-shared --with-gmp=/work/stage/buildroot/toolchain_build_cris/gmp --with-mpfr=/work/stage/buildroot/toolchain_build_cris/mpfr --enable-threads --disable-multilib --disable-libssp --disable-libssp --disable-libmudflap --disable-libgomp
Thread model: posix
gcc version 4.3.1 (GCC)
COLLECT_GCC_OPTIONS='-c' '-o' 'libc/sysdeps/linux/common/chdir.os' '-include' './include/libc-symbols.h' '-Wall' '-Wstrict-prototypes' '-fno-strict-aliasing' '-fno-stack-protector' '-fno-builtin' '-I./include' '-I.' '-isysroot' '/work/stage/buildroot/build_cris/staging_dir' '-I=/usr/include' '-Os' '-pipe' '-I/work/stage/buildroot/build_cris/staging_dir/usr/include' '-mtune=v10' '-march=v10' '-std=gnu99' '-Os' '-funit-at-a-time' '-fno-tree-loop-optimize' '-fno-tree-dominator-opts' '-fno-strength-reduce' '-I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux/cris' '-I./libpthread/linuxthreads.old/sysdeps/cris' '-I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux' '-I./libpthread/linuxthreads.old/sysdeps/pthread' '-I./libpthread/linuxthreads.old' '-I./libpthread' '-I/work/stage/buildroot/toolchain_build_cris/linux/include/' '-isystem' '/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/include' '-DNDEBUG' '-fpic' '-v'
/work/stage/buildroot/build_cris/staging_dir/usr/libexec/gcc/cris-linux-uclibc/4.3.1/cc1 -quiet -v -I./include -I. -I=/usr/include -I/work/stage/buildroot/build_cris/staging_dir/usr/include -I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux/cris -I./libpthread/linuxthreads.old/sysdeps/cris -I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux -I./libpthread/linuxthreads.old/sysdeps/pthread -I./libpthread/linuxthreads.old -I./libpthread -I/work/stage/buildroot/toolchain_build_cris/linux/include/ -isysroot /work/stage/buildroot/build_cris/staging_dir/ -D__tune_v10 -D__CRIS_arch_tune=10 -D__arch_v10 -D__CRIS_arch_version=10 -DNDEBUG -include ./include/libc-symbols.h -isysroot /work/stage/buildroot/build_cris/staging_dir -isystem /work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/include libc/sysdeps/linux/common/chdir.c -quiet -dumpbase chdir.c -mtune=v10 -march=v10 -auxbase-strip libc/sysdeps/linux/common/chdir.os -Os -Os -Wall -Wstrict-pro
totypes -std=gnu99 -version -fno-strict-aliasing -fno-stack-protector -fno-builtin -funit-at-a-time -fno-tree-loop-optimize -fno-tree-dominator-opts -fno-strength-reduce -fpic -o - |
/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/../../../../cris-linux-uclibc/bin/as -v --em=criself --no-underscore --pic -o libc/sysdeps/linux/common/chdir.os -
GNU assembler version 2.18 (cris-linux-uclibc) using BFD version (GNU Binutils) 2.18
ignoring nonexistent directory "/work/stage/buildroot/build_cris/staging_dir/usr/local/include"
ignoring duplicate directory "/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/include"
ignoring nonexistent directory "/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/../../../../cris-linux-uclibc/include"
ignoring duplicate directory "/work/stage/buildroot/build_cris/staging_dir/usr/include"
as it is a non-system directory that duplicates a system directory
ignoring duplicate directory "/work/stage/buildroot/build_cris/staging_dir/usr/include"
as it is a non-system directory that duplicates a system directory
ignoring nonexistent directory "./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux/cris"
ignoring nonexistent directory "./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux"
#include "..." search starts here:
#include <...> search starts here:
./include
.
./libpthread/linuxthreads.old/sysdeps/cris
./libpthread/linuxthreads.old/sysdeps/pthread
./libpthread/linuxthreads.old
./libpthread
/work/stage/buildroot/toolchain_build_cris/linux/include/
/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/include
/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/include-fixed
/work/stage/buildroot/build_cris/staging_dir/usr/include
End of search list.
GNU C (GCC) version 4.3.1 (cris-linux-uclibc)
compiled by GNU C version 4.1.2 (Gentoo 4.1.2 p1.1), GMP version 4.2.2, MPFR version 2.3.1.
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 8d9cd5fbd7efd311d4ba9389bc2ae5b7
COMPILER_PATH=/work/stage/buildroot/build_cris/staging_dir/usr/libexec/gcc/cris-linux-uclibc/4.3.1/:/work/stage/buildroot/build_cris/staging_dir/usr/libexec/gcc/cris-linux-uclibc/4.3.1/:/work/stage/buildroot/build_cris/staging_dir/usr/libexec/gcc/cris-linux-uclibc/:/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/:/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/:/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/../../../../cris-linux-uclibc/bin/
LIBRARY_PATH=/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/:/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/../../../../cris-linux-uclibc/lib/:/work/stage/buildroot/build_cris/staging_dir//lib/:/work/stage/buildroot/build_cris/staging_dir//usr/lib/
COLLECT_GCC_OPTIONS='-c' '-o' 'libc/sysdeps/linux/common/chdir.os' '-include' './include/libc-symbols.h' '-Wall' '-Wstrict-prototypes' '-fno-strict-aliasing' '-fno-stack-protector' '-fno-builtin' '-I./include' '-I.' '-isysroot' '/work/stage/buildroot/build_cris/staging_dir' '-I=/usr/include' '-Os' '-pipe' '-I/work/stage/buildroot/build_cris/staging_dir/usr/include' '-mtune=v10' '-march=v10' '-std=gnu99' '-Os' '-funit-at-a-time' '-fno-tree-loop-optimize' '-fno-tree-dominator-opts' '-fno-strength-reduce' '-I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux/cris' '-I./libpthread/linuxthreads.old/sysdeps/cris' '-I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux' '-I./libpthread/linuxthreads.old/sysdeps/pthread' '-I./libpthread/linuxthreads.old' '-I./libpthread' '-I/work/stage/buildroot/toolchain_build_cris/linux/include/' '-isystem' '/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/include' '-DNDEBUG' '-fpic' '-v'
Again, according to the http://sourceware.org/ml/libc-alpha/2007-03/msg00017.html this can be fixed by adding include-fixed to the compiler flags via -isystem. If it is enough only for uClibc build I can't tell..
Regards,
Hinko
--
?ETRTA POT, d.o.o., Kranj
Planina 3
4000 Kranj
Slovenia, Europe
Tel. +386 (0) 4 280 66 03
E-mail: hinko.kocevar at cetrtapot.si
Http: www.cetrtapot.si
^ permalink raw reply [flat|nested] 10+ messages in thread* [Buildroot] uClibc missing limits.h
2008-07-02 8:59 ` Hinko Kocevar
@ 2008-07-02 18:22 ` Ulf Samuelsson
2008-07-03 7:05 ` Hinko Kocevar
0 siblings, 1 reply; 10+ messages in thread
From: Ulf Samuelsson @ 2008-07-02 18:22 UTC (permalink / raw)
To: buildroot
> Hinko Kocevar wrote:
>> Bernhard Fischer wrote:
>>> On Mon, Jun 23, 2008 at 02:22:25PM +0200, Hinko Kocevar wrote:
>>>> Hi,
>>>>
>>>> I've found a way for uClibc to find headers that are not in the $(shell
>>>> $CC -print-file-name=include), but in $(shell
>>>> $CC -print-file-name=include)-fixed.
>>>> According to http://sourceware.org/ml/libc-alpha/2007-03/msg00017.html
>>>> LIBC should also look in other gcc provided header directories (eg.
>>>> include-fixed) instead only relying on 'include' to contain all correct
>>>> headers.
>>>>
>>>> Below is uClibc patch for this (tested on cris).
>>> Well, that's not really correct since the default search path already
>>> should to be
>>> $target_triple/$ver/include \
>>> $target_triple/$ver/include-fixed \
>>>
Removing "-nostdinc" from CFLAGS in "uClibc-0.9.29/Rules.mak"
allows the ARM compilation to continue,
but it again bombs since the function "testandset" has multiple definitions.
Detected in libc_pthread_init.c and rpc_thread.c.
It is "first defined" in "forward.c"
Best Regards
Ulf Samuelsson
>
> It is not if -nostdinc is in the compiler command line (see below).
>
>>> And apart from that you would not get away with just doing this for
>>> uClibc..
>>>
>>> Please paste the failing "cross-gcc -v" invocation that fails to find
>>> the include-fixed.
>>
>
> Here the compiler line that fails to find include-fixed:
>
> hinkok at alala /work/stage/buildroot/toolchain_build_cris/uClibc-0.9.29 $
> /work/stage/buildroot/build_cris/staging_dir/usr/bin/cris-linux-uclibc-gcc
> -c libc/sysdeps/linux/common/chdir.c -o
> libc/sysdeps/linux/common/chdir.os -include
> ./include/libc-symbols.h -Wall -Wstrict-prototypes -fno-strict-aliasing -fno-stack-protector
> -fno-builtin -nostdinc -I./include -I. --sysroot=/work/stage/buildroot/build_cris/staging_dir/
> -isysroot
> /work/stage/buildroot/build_cris/staging_dir -I=/usr/include -Os -pipe -I/work/stage/buildroot/build_cris/staging_dir/usr/include
> -mtune=v10 -march=v10 -std=gnu99 -Os -funit-at-a-time -fno-tree-loop-optimize
> -fno-tree-dominator-opts -fno-strength-reduce -I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux/cris
> -I./libpthread/linuxthreads.old/sysdeps/cris -I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux
> -I./libpthread/linuxthreads.old/sysdeps/pthread -I./libpthread/linuxthreads.old
> -I./libpthread -I/work/stage/buildroot/toolchain_build_cris/linux
> /include/ -isystem
> /work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/include
> -DNDEBUG -fpic -v
> Using built-in specs.
> Target: cris-linux-uclibc
> Configured with:
> /work/stage/buildroot/toolchain_build_cris/gcc-4.3.1/configure --prefix=/work/stage/buildroot/build_cris/staging_dir/usr
> --build=i386-pc-linux-gnu --host=i386-pc-linux-gnu --target=cris-linux-uclibc
> --enable-languages=c --with-sysroot=/work/stage/buildroot/toolchain_build_cris/uClibc_dev/
> --disable-__cxa_atexit --enable-target-optspace --with-gnu-ld --disable-shared
> --with-gmp=/work/stage/buildroot/toolchain_build_cris/gmp --with-mpfr=/work/stage/buildroot/toolchain_build_cris/mpfr
> --enable-threads --disable-multilib --disable-libssp --disable-libssp --disable-libmudflap
> --disable-libgomp
> Thread model: posix
> gcc version 4.3.1 (GCC)
> COLLECT_GCC_OPTIONS='-c' '-o' 'libc/sysdeps/linux/common/chdir.os'
> '-include' './include/libc-symbols.h' '-Wall' '-Wstrict-prototypes'
> '-fno-strict-aliasing' '-fno-stack-protector' '-fno-builtin' '-nostdinc'
> '-I./include' '-I.' '-isysroot'
> '/work/stage/buildroot/build_cris/staging_dir' '-I=/usr/include' '-Os'
> '-pipe' '-I/work/stage/buildroot/build_cris/staging_dir/usr/include'
> '-mtune=v10' '-march=v10' '-std=gnu99' '-Os' '-funit-at-a-time'
> '-fno-tree-loop-optimize' '-fno-tree-dominator-opts'
> '-fno-strength-reduce'
> '-I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux/cris'
> '-I./libpthread/linuxthreads.old/sysdeps/cris'
> '-I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux'
> '-I./libpthread/linuxthreads.old/sysdeps/pthread'
> '-I./libpthread/linuxthreads.old' '-I./libpthread'
> '-I/work/stage/buildroot/toolchain_build_cris/linux/include/' '-isystem'
> '/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/include'
> '-DNDEBUG' '-fpic' '-v'
> /work/stage/buildroot/build_cris/staging_dir/usr/libexec/gcc/cris-linux-uclibc/4.3.1/cc1
> -quiet -nostdinc -v -I./include -I. -I=/usr/include -I/work/stage/buildroot/build_cris/staging_dir/usr/include
> -I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux/cris -I./libpthread/linuxthreads.old/sysdeps/cris
> -I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux -I./libpthread/linuxthreads.old/sysdeps/pthread
> -I./libpthread/linuxthreads.old -I./libpthread -I/work/stage/buildroot/toolchain_build_cris/linux/include/
> -isysroot
> /work/stage/buildroot/build_cris/staging_dir/ -D__tune_v10 -D__CRIS_arch_tune=10
> -D__arch_v10 -D__CRIS_arch_version=10 -DNDEBUG -include
> ./include/libc-symbols.h -isysroot
> /work/stage/buildroot/build_cris/staging_dir -isystem
> /work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/include
> libc/sysdeps/linux/common/chdir.c -quiet -dumpbase
> chdir.c -mtune=v10 -march=v10 -auxbase-strip
> libc/sysdeps/linux/common/chdir.os -Os -Os -Wall -W
> strict-prototypes -std=gnu99 -version -fno-strict-aliasing -fno-stack-protector
> -fno-builtin -funit-at-a-time -fno-tree-loop-optimize -fno-tree-dominator-opts
> -fno-strength-reduce -fpic -o - |
> /work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/../../../../cris-linux-uclibc/bin/as
> -v --em=criself --no-underscore --pic -o
> libc/sysdeps/linux/common/chdir.os -
> GNU assembler version 2.18 (cris-linux-uclibc) using BFD version (GNU
> Binutils) 2.18
> ignoring duplicate directory
> "/work/stage/buildroot/build_cris/staging_dir/usr/include"
> ignoring nonexistent directory
> "./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux/cris"
> ignoring nonexistent directory
> "./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux"
> #include "..." search starts here:
> #include <...> search starts here:
> ./include
> .
> /work/stage/buildroot/build_cris/staging_dir/usr/include
> ./libpthread/linuxthreads.old/sysdeps/cris
> ./libpthread/linuxthreads.old/sysdeps/pthread
> ./libpthread/linuxthreads.old
> ./libpthread
> /work/stage/buildroot/toolchain_build_cris/linux/include/
> /work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/include
> End of search list.
> GNU C (GCC) version 4.3.1 (cris-linux-uclibc)
> compiled by GNU C version 4.1.2 (Gentoo 4.1.2 p1.1), GMP version 4.2.2,
> MPFR version 2.3.1.
> GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
> Compiler executable checksum: 8d9cd5fbd7efd311d4ba9389bc2ae5b7
> In file included from ./include/sys/param.h:22,
> from libc/sysdeps/linux/common/chdir.c:13:
> ./include/limits.h:124:26: error: limits.h: No such file or directory
>
>
> Quick fix was to remove the '-nostdinc' flag, the include-fixed is also
> seen in the includes list:
>
> hinkok at alala /work/stage/buildroot/toolchain_build_cris/uClibc-0.9.29 $
> /work/stage/buildroot/build_cris/staging_dir/usr/bin/cris-linux-uclibc-gcc
> -c libc/sysdeps/linux/common/chdir.c -o
> libc/sysdeps/linux/common/chdir.os -include
> ./include/libc-symbols.h -Wall -Wstrict-prototypes -fno-strict-aliasing -fno-stack-protector
> -fno-builtin -I./include -I. --sysroot=/work/stage/buildroot/build_cris/staging_dir/
> -isysroot
> /work/stage/buildroot/build_cris/staging_dir -I=/usr/include -Os -pipe -I/work/stage/buildroot/build_cris/staging_dir/usr/include
> -mtune=v10 -march=v10 -std=gnu99 -Os -funit-at-a-time -fno-tree-loop-optimize
> -fno-tree-dominator-opts -fno-strength-reduce -I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux/cris
> -I./libpthread/linuxthreads.old/sysdeps/cris -I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux
> -I./libpthread/linuxthreads.old/sysdeps/pthread -I./libpthread/linuxthreads.old
> -I./libpthread -I/work/stage/buildroot/toolchain_build_cris/linux/include/
> -isystem
> /work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/include
> -DNDEBUG -fpic -v
> Using built-in specs.
> Target: cris-linux-uclibc
> Configured with:
> /work/stage/buildroot/toolchain_build_cris/gcc-4.3.1/configure --prefix=/work/stage/buildroot/build_cris/staging_dir/usr
> --build=i386-pc-linux-gnu --host=i386-pc-linux-gnu --target=cris-linux-uclibc
> --enable-languages=c --with-sysroot=/work/stage/buildroot/toolchain_build_cris/uClibc_dev/
> --disable-__cxa_atexit --enable-target-optspace --with-gnu-ld --disable-shared
> --with-gmp=/work/stage/buildroot/toolchain_build_cris/gmp --with-mpfr=/work/stage/buildroot/toolchain_build_cris/mpfr
> --enable-threads --disable-multilib --disable-libssp --disable-libssp --disable-libmudflap
> --disable-libgomp
> Thread model: posix
> gcc version 4.3.1 (GCC)
> COLLECT_GCC_OPTIONS='-c' '-o' 'libc/sysdeps/linux/common/chdir.os'
> '-include' './include/libc-symbols.h' '-Wall' '-Wstrict-prototypes'
> '-fno-strict-aliasing' '-fno-stack-protector' '-fno-builtin' '-I./include'
> '-I.' '-isysroot' '/work/stage/buildroot/build_cris/staging_dir'
> '-I=/usr/include' '-Os' '-pipe'
> '-I/work/stage/buildroot/build_cris/staging_dir/usr/include' '-mtune=v10'
> '-march=v10' '-std=gnu99' '-Os' '-funit-at-a-time'
> '-fno-tree-loop-optimize' '-fno-tree-dominator-opts'
> '-fno-strength-reduce'
> '-I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux/cris'
> '-I./libpthread/linuxthreads.old/sysdeps/cris'
> '-I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux'
> '-I./libpthread/linuxthreads.old/sysdeps/pthread'
> '-I./libpthread/linuxthreads.old' '-I./libpthread'
> '-I/work/stage/buildroot/toolchain_build_cris/linux/include/' '-isystem'
> '/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/include'
> '-DNDEBUG' '-fpic' '-v'
> /work/stage/buildroot/build_cris/staging_dir/usr/libexec/gcc/cris-linux-uclibc/4.3.1/cc1
> -quiet -v -I./include -I. -I=/usr/include -I/work/stage/buildroot/build_cris/staging_dir/usr/include
> -I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux/cris -I./libpthread/linuxthreads.old/sysdeps/cris
> -I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux -I./libpthread/linuxthreads.old/sysdeps/pthread
> -I./libpthread/linuxthreads.old -I./libpthread -I/work/stage/buildroot/toolchain_build_cris/linux/include/
> -isysroot
> /work/stage/buildroot/build_cris/staging_dir/ -D__tune_v10 -D__CRIS_arch_tune=10
> -D__arch_v10 -D__CRIS_arch_version=10 -DNDEBUG -include
> ./include/libc-symbols.h -isysroot
> /work/stage/buildroot/build_cris/staging_dir -isystem
> /work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/include
> libc/sysdeps/linux/common/chdir.c -quiet -dumpbase
> chdir.c -mtune=v10 -march=v10 -auxbase-strip
> libc/sysdeps/linux/common/chdir.os -Os -Os -Wall -Wstrict-pro
> totypes -std=gnu99 -version -fno-strict-aliasing -fno-stack-protector -fno-builtin
> -funit-at-a-time -fno-tree-loop-optimize -fno-tree-dominator-opts -fno-strength-reduce
> -fpic -o - |
> /work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/../../../../cris-linux-uclibc/bin/as
> -v --em=criself --no-underscore --pic -o
> libc/sysdeps/linux/common/chdir.os -
> GNU assembler version 2.18 (cris-linux-uclibc) using BFD version (GNU
> Binutils) 2.18
> ignoring nonexistent directory
> "/work/stage/buildroot/build_cris/staging_dir/usr/local/include"
> ignoring duplicate directory
> "/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/include"
> ignoring nonexistent directory
> "/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/../../../../cris-linux-uclibc/include"
> ignoring duplicate directory
> "/work/stage/buildroot/build_cris/staging_dir/usr/include"
> as it is a non-system directory that duplicates a system directory
> ignoring duplicate directory
> "/work/stage/buildroot/build_cris/staging_dir/usr/include"
> as it is a non-system directory that duplicates a system directory
> ignoring nonexistent directory
> "./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux/cris"
> ignoring nonexistent directory
> "./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux"
> #include "..." search starts here:
> #include <...> search starts here:
> ./include
> .
> ./libpthread/linuxthreads.old/sysdeps/cris
> ./libpthread/linuxthreads.old/sysdeps/pthread
> ./libpthread/linuxthreads.old
> ./libpthread
> /work/stage/buildroot/toolchain_build_cris/linux/include/
> /work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/include
> /work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/include-fixed
> /work/stage/buildroot/build_cris/staging_dir/usr/include
> End of search list.
> GNU C (GCC) version 4.3.1 (cris-linux-uclibc)
> compiled by GNU C version 4.1.2 (Gentoo 4.1.2 p1.1), GMP version 4.2.2,
> MPFR version 2.3.1.
> GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
> Compiler executable checksum: 8d9cd5fbd7efd311d4ba9389bc2ae5b7
> COMPILER_PATH=/work/stage/buildroot/build_cris/staging_dir/usr/libexec/gcc/cris-linux-uclibc/4.3.1/:/work/stage/buildroot/build_cris/staging_dir/usr/libexec/gcc/cris-linux-uclibc/4.3.1/:/work/stage/buildroot/build_cris/staging_dir/usr/libexec/gcc/cris-linux-uclibc/:/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/:/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/:/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/../../../../cris-linux-uclibc/bin/
> LIBRARY_PATH=/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/:/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/../../../../cris-linux-uclibc/lib/:/work/stage/buildroot/build_cris/staging_dir//lib/:/work/stage/buildroot/build_cris/staging_dir//usr/lib/
> COLLECT_GCC_OPTIONS='-c' '-o' 'libc/sysdeps/linux/common/chdir.os'
> '-include' './include/libc-symbols.h' '-Wall' '-Wstrict-prototypes'
> '-fno-strict-aliasing' '-fno-stack-protector' '-fno-builtin' '-I./include'
> '-I.' '-isysroot' '/work/stage/buildroot/build_cris/staging_dir'
> '-I=/usr/include' '-Os' '-pipe'
> '-I/work/stage/buildroot/build_cris/staging_dir/usr/include' '-mtune=v10'
> '-march=v10' '-std=gnu99' '-Os' '-funit-at-a-time'
> '-fno-tree-loop-optimize' '-fno-tree-dominator-opts'
> '-fno-strength-reduce'
> '-I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux/cris'
> '-I./libpthread/linuxthreads.old/sysdeps/cris'
> '-I./libpthread/linuxthreads.old/sysdeps/unix/sysv/linux'
> '-I./libpthread/linuxthreads.old/sysdeps/pthread'
> '-I./libpthread/linuxthreads.old' '-I./libpthread'
> '-I/work/stage/buildroot/toolchain_build_cris/linux/include/' '-isystem'
> '/work/stage/buildroot/build_cris/staging_dir/usr/lib/gcc/cris-linux-uclibc/4.3.1/include'
> '-DNDEBUG' '-fpic' '-v'
>
> Again, according to the
> http://sourceware.org/ml/libc-alpha/2007-03/msg00017.html this can be
> fixed by adding include-fixed to the compiler flags via -isystem. If it is
> enough only for uClibc build I can't tell..
>
> Regards,
> Hinko
>
> --
> ?ETRTA POT, d.o.o., Kranj
> Planina 3
> 4000 Kranj
> Slovenia, Europe
> Tel. +386 (0) 4 280 66 03
> E-mail: hinko.kocevar at cetrtapot.si
> Http: www.cetrtapot.si
>
> _______________________________________________
> buildroot mailing list
> buildroot at uclibc.org
> http://busybox.net/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] uClibc missing limits.h
2008-07-02 18:22 ` Ulf Samuelsson
@ 2008-07-03 7:05 ` Hinko Kocevar
2008-07-03 8:05 ` Bernhard Fischer
0 siblings, 1 reply; 10+ messages in thread
From: Hinko Kocevar @ 2008-07-03 7:05 UTC (permalink / raw)
To: buildroot
Ulf Samuelsson wrote:
>
>
>> Hinko Kocevar wrote:
>>> Bernhard Fischer wrote:
>>>> On Mon, Jun 23, 2008 at 02:22:25PM +0200, Hinko Kocevar wrote:
>>>>> Hi,
>>>>>
>>>>> I've found a way for uClibc to find headers that are not in the
>>>>> $(shell $CC -print-file-name=include), but in $(shell $CC
>>>>> -print-file-name=include)-fixed.
>>>>> According to
>>>>> http://sourceware.org/ml/libc-alpha/2007-03/msg00017.html LIBC
>>>>> should also look in other gcc provided header directories (eg.
>>>>> include-fixed) instead only relying on 'include' to contain all
>>>>> correct headers.
>>>>>
>>>>> Below is uClibc patch for this (tested on cris).
>>>> Well, that's not really correct since the default search path already
>>>> should to be
>>>> $target_triple/$ver/include \
>>>> $target_triple/$ver/include-fixed \
>>>>
>
> Removing "-nostdinc" from CFLAGS in "uClibc-0.9.29/Rules.mak"
> allows the ARM compilation to continue,
But is this OK?
> but it again bombs since the function "testandset" has multiple
> definitions.
> Detected in libc_pthread_init.c and rpc_thread.c.
> It is "first defined" in "forward.c"
I guess this would be the problem in uClibc-0.9.29/libpthread/linuxthreads.old/sysdeps/arm/pt-machine.h.
Dirty hack (works on cris arch), change:
# define PT_EI extern inline
to
# define PT_EI static inline
Regards,
Hinko
--
?ETRTA POT, d.o.o., Kranj
Planina 3
4000 Kranj
Slovenia, Europe
Tel. +386 (0) 4 280 66 03
E-mail: hinko.kocevar at cetrtapot.si
Http: www.cetrtapot.si
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] uClibc missing limits.h
2008-07-03 7:05 ` Hinko Kocevar
@ 2008-07-03 8:05 ` Bernhard Fischer
2008-07-09 7:54 ` Hinko Kocevar
0 siblings, 1 reply; 10+ messages in thread
From: Bernhard Fischer @ 2008-07-03 8:05 UTC (permalink / raw)
To: buildroot
On Thu, Jul 03, 2008 at 09:05:06AM +0200, Hinko Kocevar wrote:
>Ulf Samuelsson wrote:
>>
>>
>>> Hinko Kocevar wrote:
>>>> Bernhard Fischer wrote:
>>>>> On Mon, Jun 23, 2008 at 02:22:25PM +0200, Hinko Kocevar wrote:
>>>>>> Hi,
>>>>>>
>>>>>> I've found a way for uClibc to find headers that are not in the
>>>>>> $(shell $CC -print-file-name=include), but in $(shell $CC
>>>>>> -print-file-name=include)-fixed.
>>>>>> According to
>>>>>> http://sourceware.org/ml/libc-alpha/2007-03/msg00017.html LIBC
>>>>>> should also look in other gcc provided header directories (eg.
>>>>>> include-fixed) instead only relying on 'include' to contain all
>>>>>> correct headers.
>>>>>>
>>>>>> Below is uClibc patch for this (tested on cris).
>>>>> Well, that's not really correct since the default search path already
>>>>> should to be
>>>>> $target_triple/$ver/include \
>>>>> $target_triple/$ver/include-fixed \
>>>>>
>>
>> Removing "-nostdinc" from CFLAGS in "uClibc-0.9.29/Rules.mak"
>> allows the ARM compilation to continue,
>
>But is this OK?
no.
>
>> but it again bombs since the function "testandset" has multiple
>> definitions.
>> Detected in libc_pthread_init.c and rpc_thread.c.
>> It is "first defined" in "forward.c"
>
>I guess this would be the problem in uClibc-0.9.29/libpthread/linuxthreads.old/sysdeps/arm/pt-machine.h.
>
>Dirty hack (works on cris arch), change:
># define PT_EI extern inline
>
>to
>
># define PT_EI static inline
Already fixed in svn trunk.
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] uClibc missing limits.h
2008-07-03 8:05 ` Bernhard Fischer
@ 2008-07-09 7:54 ` Hinko Kocevar
2008-07-09 11:38 ` Bernhard Fischer
0 siblings, 1 reply; 10+ messages in thread
From: Hinko Kocevar @ 2008-07-09 7:54 UTC (permalink / raw)
To: buildroot
Bernhard Fischer wrote:
> On Thu, Jul 03, 2008 at 09:05:06AM +0200, Hinko Kocevar wrote:
>> Ulf Samuelsson wrote:
>>>
>>>> Hinko Kocevar wrote:
>>>>> Bernhard Fischer wrote:
>>>>>> On Mon, Jun 23, 2008 at 02:22:25PM +0200, Hinko Kocevar wrote:
>>>>>>> Hi,
>>>>>>>
>>>>>>> I've found a way for uClibc to find headers that are not in the
>>>>>>> $(shell $CC -print-file-name=include), but in $(shell $CC
>>>>>>> -print-file-name=include)-fixed.
>>>>>>> According to
>>>>>>> http://sourceware.org/ml/libc-alpha/2007-03/msg00017.html LIBC
>>>>>>> should also look in other gcc provided header directories (eg.
>>>>>>> include-fixed) instead only relying on 'include' to contain all
>>>>>>> correct headers.
>>>>>>>
>>>>>>> Below is uClibc patch for this (tested on cris).
>>>>>> Well, that's not really correct since the default search path already
>>>>>> should to be
>>>>>> $target_triple/$ver/include \
>>>>>> $target_triple/$ver/include-fixed \
>>>>>>
>>> Removing "-nostdinc" from CFLAGS in "uClibc-0.9.29/Rules.mak"
>>> allows the ARM compilation to continue,
>> But is this OK?
>
> no.
Looking at the gcc manual "-nostdinc" causes compiler to omit the standard include directories:
-nostdinc
Do not search the standard system directories for header files. Only the directories you have specified with -I options (and the directory of the current file, if appropriate) are searched.
IMHO, only when compiling uClibc we need to worry about the "-nostdinc" flag hence we should add -I directive to the compiler flags as suggested by the manual and solve the missing limits.h problem.
Or we could use "-isystem" flag:
-isystem dir
Search dir for header files, after all directories specified by -I but before the standard system directories. Mark it as a system directory, so that it gets the same special treatment as is applied to the standard system directories. If dir begins with =, then the = will be replaced by the sysroot prefix; see --sysroot and -isysroot.
Best regards,
Hinko
PS.: Now I know what -I=dir stands for :)
--
?ETRTA POT, d.o.o., Kranj
Planina 3
4000 Kranj
Slovenia, Europe
Tel. +386 (0) 4 280 66 03
E-mail: hinko.kocevar at cetrtapot.si
Http: www.cetrtapot.si
^ permalink raw reply [flat|nested] 10+ messages in thread* [Buildroot] uClibc missing limits.h
2008-07-09 7:54 ` Hinko Kocevar
@ 2008-07-09 11:38 ` Bernhard Fischer
2008-07-11 7:15 ` Hinko Kocevar
0 siblings, 1 reply; 10+ messages in thread
From: Bernhard Fischer @ 2008-07-09 11:38 UTC (permalink / raw)
To: buildroot
On Wed, Jul 09, 2008 at 09:54:43AM +0200, Hinko Kocevar wrote:
>Bernhard Fischer wrote:
>> On Thu, Jul 03, 2008 at 09:05:06AM +0200, Hinko Kocevar wrote:
>>>> Removing "-nostdinc" from CFLAGS in "uClibc-0.9.29/Rules.mak"
>>>> allows the ARM compilation to continue,
>>> But is this OK?
>>
>> no.
>
>Looking at the gcc manual "-nostdinc" causes compiler to omit the standard include directories:
>Or we could use "-isystem" flag:
No, better pull the fix that we have in uClibc-trunk, short of using the
trunk in the first place.
>PS.: Now I know what -I=dir stands for :)
heh ;)
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] uClibc missing limits.h
2008-07-09 11:38 ` Bernhard Fischer
@ 2008-07-11 7:15 ` Hinko Kocevar
0 siblings, 0 replies; 10+ messages in thread
From: Hinko Kocevar @ 2008-07-11 7:15 UTC (permalink / raw)
To: buildroot
Bernhard Fischer wrote:
> On Wed, Jul 09, 2008 at 09:54:43AM +0200, Hinko Kocevar wrote:
>> Bernhard Fischer wrote:
>>> On Thu, Jul 03, 2008 at 09:05:06AM +0200, Hinko Kocevar wrote:
>
>>>>> Removing "-nostdinc" from CFLAGS in "uClibc-0.9.29/Rules.mak"
>>>>> allows the ARM compilation to continue,
>>>> But is this OK?
>>> no.
>> Looking at the gcc manual "-nostdinc" causes compiler to omit the standard include directories:
>
>> Or we could use "-isystem" flag:
>
> No, better pull the fix that we have in uClibc-trunk, short of using the
> trunk in the first place.
>
Nice.
--
?ETRTA POT, d.o.o., Kranj
Planina 3
4000 Kranj
Slovenia, Europe
Tel. +386 (0) 4 280 66 03
E-mail: hinko.kocevar at cetrtapot.si
Http: www.cetrtapot.si
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2008-07-11 7:15 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-06-23 12:22 [Buildroot] uClibc missing limits.h Hinko Kocevar
2008-06-23 13:16 ` Bernhard Fischer
2008-06-24 11:14 ` Hinko Kocevar
2008-07-02 8:59 ` Hinko Kocevar
2008-07-02 18:22 ` Ulf Samuelsson
2008-07-03 7:05 ` Hinko Kocevar
2008-07-03 8:05 ` Bernhard Fischer
2008-07-09 7:54 ` Hinko Kocevar
2008-07-09 11:38 ` Bernhard Fischer
2008-07-11 7:15 ` Hinko Kocevar
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox