Gilles Chanteperdrix wrote: > Jan Kiszka wrote: > > Gilles Chanteperdrix wrote: > > > Jan Kiszka wrote: > > > > Hi, > > > > > > > > I just tried to get the simulator from trunk built but failed here: > > > > > > > > In file included from > ../../../../xenomai/sim/../include/posix/posix.h:29, > > > > from > > > > ../../../../xenomai/sim/../ksrc/skins/posix/internal.h:24, > > > > from > > > > ../../../../xenomai/sim/../ksrc/skins/posix/thread.h:23, > > > > from > > > > ../../../../xenomai/sim/../ksrc/skins/posix/sched.c:48: > > > > ../../../../xenomai/sim/../include/posix/pthread.h:246: conflicting > > > > types for `pthread_attr_getaffinity_np' > > > > /usr/include/pthread.h:383: previous declaration of > > > > `pthread_attr_getaffinity_np' > > > > ../../../../xenomai/sim/../include/posix/pthread.h:249: conflicting > > > > types for `pthread_attr_setaffinity_np' > > > > /usr/include/pthread.h:377: previous declaration of > > > > `pthread_attr_setaffinity_np' > > > > > > > > Looks like glibc-2.4 (that one comes with my opensuse 10.1) now also > > > > knows get/setaffinity. Prototypes of glibc: > > > > > > > > extern int pthread_attr_setaffinity_np (pthread_attr_t *__attr, > > > > size_t __cpusetsize, > > > > __const cpu_set_t *__cpuset) > > > > __THROW; > > > > extern int pthread_attr_getaffinity_np (__const pthread_attr_t > *__attr, > > > > size_t __cpusetsize, > > > > cpu_set_t *__cpuset) __THROW; > > > > > > > > > > Could you try the attached patch ? > > > > > > > Takes me further, now stops like this: > > > > if ../../gcic/gcic -DHAVE_CONFIG_H -I. > > -I../../../../xenomai/sim/skins/posix -I../../include -D_GNU_SOURCE > > -D__IN_XENO__ --gcic-backend=/usr/src/xenomai/inst//libexec/gcic > > --skin-code -I../../../../xenomai/sim/../ksrc/skins > > -I../../../../xenomai/sim/../include > > -I../../../../xenomai/sim/skins/posix/.. -g -MT timer.o -MD -MP -MF > > ".deps/timer.Tpo" -c -o timer.o > > ../../../../xenomai/sim/../ksrc/skins/posix/timer.c; \ > > then mv -f ".deps/timer.Tpo" ".deps/timer.Po"; else rm -f > > ".deps/timer.Tpo"; exit 1; fi > > In file included from /usr/include/sys/types.h:270, > > from > ../../../../xenomai/sim/../include/nucleus/types.h:32, > > from > ../../../../xenomai/sim/../include/nucleus/queue.h:24, > > from > ../../../../xenomai/sim/../include/nucleus/timer.h:23, > > from > > ../../../../xenomai/sim/../ksrc/skins/posix/timer.c:24: > > /usr/include/bits/pthreadtypes.h:69: warning: unnamed struct/union that > > defines no instances > > ../../../../xenomai/sim/../ksrc/skins/posix/timer.c: In function > > `pse51_timer_create': > > ../../../../xenomai/sim/../ksrc/skins/posix/timer.c:186: warning: > > assignment makes pointer from integer without a cast > > ../../../../xenomai/sim/../ksrc/skins/posix/timer.c: In function > > `pse51_timer_delete': > > ../../../../xenomai/sim/../ksrc/skins/posix/timer.c:223: array subscript > > is not an integer > > ../../../../xenomai/sim/../ksrc/skins/posix/timer.c: In function > > `pse51_timer_settime': > > ../../../../xenomai/sim/../ksrc/skins/posix/timer.c:344: array subscript > > is not an integer > > ../../../../xenomai/sim/../ksrc/skins/posix/timer.c: In function > > `pse51_timer_gettime': > > ../../../../xenomai/sim/../ksrc/skins/posix/timer.c:437: array subscript > > is not an integer > > ../../../../xenomai/sim/../ksrc/skins/posix/timer.c: In function > > `pse51_timer_getoverrun': > > ../../../../xenomai/sim/../ksrc/skins/posix/timer.c:485: array subscript > > is not an integer > > Looks like timer_t is no longer an integer type, try the attached patch. >
Thanks, works now. > > > > > > Moreover, I get tons of this warning: > > > > > > > > /usr/include/bits/pthreadtypes.h:69: warning: unnamed struct/union > that > > > > defines no instances > > > > > > > > But this is an "imported" issue, isn't it? Likely due to some picky > gcc > > > > switch during the simulator build. > > > > > > It depends on what is defined at line 69 of pthreadtypes.h... > > > > > > > typedef union > > { > > struct __pthread_mutex_s > > { > > int __lock; > > unsigned int __count; > > int __owner; > > /* KIND must stay at this position in the structure to maintain > > binary compatibility. */ > > int __kind; > > unsigned int __nusers; > > __extension__ union > > { > > int __spins; > > __pthread_slist_t __list; > > }; /* >>> line 69 <<< */ > > } __data; > > char __size[__SIZEOF_PTHREAD_MUTEX_T]; > > long int __align; > > } pthread_mutex_t; > > Looking at gcc 2.95 documentation, it seems that unname unions are not > supported. > Probably not critical for the simulator, as it doesn't make use of the involved fields, does it? Jan
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Xenomai-core mailing list Xenomai-core@gna.org https://mail.gna.org/listinfo/xenomai-core