Hans Søndergaard (HSO) wrote:
> Hi,
>
> Thanks for the answer.
> We are now trying to install Xenomai 2.4.3 using Linux 2.6.24 on AT91SAM9260,
> but have a problem:
>
> Is it possible to disable the building of the posix skin when
> configuring the user space libraries for Xenomai?
>
> I have tried --disable-posix-skin, but this had no effect.
>
> The reason why I ask is that the building of src/skins/posix/init.c
> fails like this:
>
> [EMAIL PROTECTED] posix]$ arm-linux-uclibc-gcc -DHAVE_CONFIG_H -I.
> -I../../../src/inc
> lude -I../../../../xenomai-2.4.3/src/skins/posix -O2 -D_GNU_SOURCE
> -D_REENTRANT
> -Wall -pipe -march=armv5 -D__XENO__ -D__IN_XENO__ -Wstrict-prototypes
> -I../../..
> /../xenomai-2.4.3/include -I../../../../xenomai-2.4.3/include/posix -MT
> libpthre
> ad_rt_la-init.lo -MD -MP -MF .deps/libpthread_rt_la-init.Tpo -c
> ../../../../xeno
> mai-2.4.3/src/skins/posix/init.c -fPIC -DPIC -o
> .libs/libpthread_rt_la-init.o
> In file included from ../../../src/include/asm/xenomai/atomic.h:78,
> from ../../../../xenomai-2.4.3/include/nucleus/system.h:27,
> from ../../../src/include/asm/xenomai/system.h:135,
> from ../../../../xenomai-2.4.3/include/nucleus/types.h:40,
> from ../../../../xenomai-2.4.3/include/nucleus/queue.h:25,
> from
> ../../../../xenomai-2.4.3/include/nucleus/timebase.h:30,
> from ../../../../xenomai-2.4.3/include/nucleus/timer.h:27,
> from ../../../../xenomai-2.4.3/include/nucleus/thread.h:26,
> from ../../../../xenomai-2.4.3/include/posix/pthread.h:150,
> from
> /home/stk/brick/mb9200/buildroot/build_arm/staging_dir/bin
> -ccache/../lib/gcc/arm-linux-uclibc/4.1.1/../../../../arm-linux-uclibc/sys-inclu
> de/bits/uClibc_mutex.h:16,
> from
> /home/stk/brick/mb9200/buildroot/build_arm/staging_dir/bin
> -ccache/../lib/gcc/arm-linux-uclibc/4.1.1/../../../../arm-linux-uclibc/sys-inclu
> de/bits/uClibc_stdio.h:120,
> from
> /home/stk/brick/mb9200/buildroot/build_arm/staging_dir/bin
> -ccache/../lib/gcc/arm-linux-uclibc/4.1.1/../../../../arm-linux-uclibc/sys-inclu
> de/stdio.h:73,
> from ../../../../xenomai-2.4.3/src/skins/posix/init.c:20:
> ../../../src/include/asm/xenomai/syscall.h: In function
> 'xeno_arm_features_check
> ':
> ../../../src/include/asm/xenomai/syscall.h:295: error: 'stderr' undeclared
> (firs
> t use in this function)
> ../../../src/include/asm/xenomai/syscall.h:295: error: (Each undeclared
> identifi
> er is reported only once
> ../../../src/include/asm/xenomai/syscall.h:295: error: for each function it
> appe
> ars in.)
>
> Obviously there is something wrong with the include path used:
> uClibc_mutex.h should not include 'pthread.h' in the Xenomai
> distribution but rather the version in uClibc itself.
>
> Why this happens I'm trying to discover.
>
> The complete configure I'm using is:
>
> ../xenomai-2.4.3/configure --build=i686-pc-linux-gnu --host=arm-linux-uclibc
> --enable-arm-mach=at91sam926x --enable-arm-tsc
>
> Thanks in advance.
Well, I understand that it may not be important to you if you do not
intend to use the posix skin, but we should try and solve this issue
(which seems to be a uclibc issue). Including posix skin pthread.h
instead of libc pthread.h should be no problem, since posix skin
pthread.h include the libc pthread.h. The problem here is due to the
fact that asm-arm/syscall.h is trying to use stderr whereas we are at
the very beginning of stdio.h where stderr is not defined yet.
I have to admit that I have no idea here other than defining a function
in init.c which calls fprintf and to call this function instead of
fprintf in asm-arm/syscall.h
Philippe, any better idea ?
--
Gilles.
_______________________________________________
Xenomai-help mailing list
[email protected]
https://mail.gna.org/listinfo/xenomai-help