Wolfgang Grandegger wrote:
 > Hello,
 > 
 > I tried to test the POSIX example program satch.c under Linux 2.4.25 for
 > PPC. I was able to fix a few issues but the module does still not load.
 > I have attached a patch for Xenomai 2.4.2 fixing:
 > 
 > - User-space satch: It was necessary to move time.h and signal.h to the
 >   end of the include block to get it compiled (otherwise clockid_t is
 >   defined, etc.)
 > 
 > - User-space satch: It was necessary to move "#define xnprintf printf"
 >   behind the include block, otherwise the linker complains about missing
 >   symbols. I wonder how this can work with 2.6. And what is the status
 >   of xnprintf?
 > 
 > - Makefile: to avoid a mixup of CFLAG definitions for compiling the
 >   user-space and kernel-space part, I renamed CFLAGS to UCFLAGS etc.
 >   (see patch). Note sure if this is an issue for 2.6 as well.
 > 
 > - Makefile: I added -DPRODUCER to the module build with Linux 2.4.
 > 
 > - I got the module build, but insmod fails with:
 > 
 >   bash-2.05b# insmod satch.o
 >   satch.o: unresolved symbol shm_unlink
 >   satch.o: unresolved symbol ftruncate
 >   satch.o: unresolved symbol shm_open
 >   satch.o: unresolved symbol munmap
 >   satch.o: unresolved symbol mmap
 >   satch.o: unresolved symbol pse51_shm_close
 > 
 >   Any idea why?
 > 
 > Thanks,

Does the following patch improve anything ?

-- 


                                            Gilles Chanteperdrix.
Index: include/posix/sys/mman.h
===================================================================
--- include/posix/sys/mman.h    (revision 3561)
+++ include/posix/sys/mman.h    (working copy)
@@ -21,6 +21,8 @@
 
 #if defined(__KERNEL__) || defined(__XENO_SIM__)
 
+#include <nucleus/xenomai.h>
+
 #ifdef __KERNEL__
 #include <asm/mman.h>
 #endif /* __KERNEL__ */
Index: include/posix/signal.h
===================================================================
--- include/posix/signal.h      (revision 3561)
+++ include/posix/signal.h      (working copy)
@@ -21,6 +21,8 @@
 
 #if defined(__KERNEL__) || defined(__XENO_SIM__)
 
+#include <nucleus/xenomai.h>
+
 #ifdef __KERNEL__
 #include <linux/signal.h>
 
Index: include/posix/time.h
===================================================================
--- include/posix/time.h        (revision 3561)
+++ include/posix/time.h        (working copy)
@@ -21,6 +21,8 @@
 
 #if defined(__KERNEL__) || defined(__XENO_SIM__)
 
+#include <nucleus/xenomai.h>
+
 #ifdef __KERNEL__
 #include <linux/time.h>
 #define DELAYTIMER_MAX UINT_MAX
Index: include/posix/mqueue.h
===================================================================
--- include/posix/mqueue.h      (revision 3561)
+++ include/posix/mqueue.h      (working copy)
@@ -21,6 +21,8 @@
 
 #if defined(__KERNEL__) || defined(__XENO_SIM__)
 
+#include <nucleus/xenomai.h>
+
 #ifdef __KERNEL__
 #include <linux/types.h>
 #include <linux/signal.h>
Index: include/posix/semaphore.h
===================================================================
--- include/posix/semaphore.h   (revision 3561)
+++ include/posix/semaphore.h   (working copy)
@@ -21,6 +21,8 @@
 
 #if defined(__KERNEL__) || defined(__XENO_SIM__)
 
+#include <nucleus/xenomai.h>
+
 #ifdef __KERNEL__
 #include <linux/kernel.h>
 #include <linux/fcntl.h>
Index: include/posix/errno.h
===================================================================
--- include/posix/errno.h       (revision 3561)
+++ include/posix/errno.h       (working copy)
@@ -21,6 +21,8 @@
 
 #if defined(__KERNEL__) || defined(__XENO_SIM__)
 
+#include <nucleus/xenomai.h>
+
 #ifdef __KERNEL__
 #include <linux/errno.h>
 #include <linux/unistd.h>         /* conflicting declaration of errno. */
Index: include/posix/fcntl.h
===================================================================
--- include/posix/fcntl.h       (revision 3561)
+++ include/posix/fcntl.h       (working copy)
@@ -21,6 +21,8 @@
 
 #if defined(__KERNEL__) || defined(__XENO_SIM__)
 
+#include <nucleus/xenomai.h>
+
 #ifdef __KERNEL__
 #include <linux/fcntl.h>
 #endif /* __KERNEL__ */
Index: include/posix/sched.h
===================================================================
--- include/posix/sched.h       (revision 3561)
+++ include/posix/sched.h       (working copy)
@@ -21,6 +21,8 @@
 
 #if defined(__KERNEL__) || defined(__XENO_SIM__)
 
+#include <nucleus/xenomai.h>
+
 #ifdef __KERNEL__
 #include <linux/sched.h>
 #endif /* __KERNEL__ */
Index: include/posix/unistd.h
===================================================================
--- include/posix/unistd.h      (revision 3561)
+++ include/posix/unistd.h      (working copy)
@@ -21,6 +21,8 @@
 
 #if defined(__KERNEL__) || defined(__XENO_SIM__)
 
+#include <nucleus/xenomai.h>
+
 #ifdef __KERNEL__
 #include <linux/types.h>
 #endif /* __KERNEL__ */
Index: examples/posix/Makefile
===================================================================
--- examples/posix/Makefile     (revision 3561)
+++ examples/posix/Makefile     (working copy)
@@ -79,7 +79,7 @@ else
 
 ARCH    ?= $(shell uname -i)
 INCLUDE := -I$(KSRC)/include/xenomai -I$(KSRC)/include/xenomai/compat 
-I$(KSRC)/include/xenomai/posix
-CFLAGS  += $(shell $(MAKE) -s -C $(KSRC) CC=$(CC) ARCH=$(ARCH) SUBDIRS=$(PWD) 
modules) $(INCLUDE)
+CFLAGS  := $(shell $(MAKE) -s -C $(KSRC) CC=$(CC) ARCH=$(ARCH) SUBDIRS=$(PWD) 
modules) $(INCLUDE)
 
 all:: $(OBJS)
 
_______________________________________________
Xenomai-core mailing list
Xenomai-core@gna.org
https://mail.gna.org/listinfo/xenomai-core

Reply via email to