Hello
I would like to compile a semaphore module in rtlinux-2.3-pre2.tar.gz.
I read INSTALL file, patched up kernel 2.2.14, and make some modules
(fifo, schedulers, etc).
And I copyed rtl.mk from rtlinux-2.3 to rtlinux-2.3/semaphores, cd semaphores,
tryed to make a semaphore module.
But I can't compile that.
Please give me some help.
Best regards.
KIMOTO Yoshio
PS. following part is error message when I compiled that.
-----------------------------------------------
gcc -I/usr/src/linux/include -I/home/kimoT/arch/rtlinux-2.3/include
-I/home/kimoT/arch/rtlinux-2.3 -I/usr/src/linux/include
-I/home/kimoT/arch/rtlinux-2.3/include -I/home/kimoT/arch/rtlinux-2.3
-I/home/kimoT/arch/rtlinux-2.3/include/posix -Wall -Wstrict-prototypes -O2 -D__RTL__
-D__KERNEL__ -DMODULE -pipe -fno-strength-reduce -m486 -malign-loops=2 -malign-jumps=2
-malign-functions=2 -DCPU=686 -g -D__KERNEL__ -D__RT__ -c rt_ipc.c
{standard input}: Assembler messages:
{standard input}:47: Warning: Ignoring changed section attributes for .modinfo
In file included from rt_ipc.c:35:
rt_ipc.h:28: parse error before `RT_TASK'
rt_ipc.h:28: warning: no semicolon at end of struct or union
rt_ipc.h:29: warning: type defaults to `int' in declaration of `RT_TASK_ENTRY'
rt_ipc.h:29: warning: data definition has no type or storage class
rt_ipc.h:44: parse error before `RT_TASK_ENTRY'
rt_ipc.h:44: warning: no semicolon at end of struct or union
rt_ipc.h:45: warning: type defaults to `int' in declaration of `rt_sem_t'
rt_ipc.h:45: warning: data definition has no type or storage class
rt_ipc.h:59: parse error before `RT_TASK_ENTRY'
rt_ipc.h:59: warning: no semicolon at end of struct or union
rt_ipc.h:60: warning: type defaults to `int' in declaration of `rt_mq_t'
rt_ipc.h:60: warning: data definition has no type or storage class
rt_ipc.h:64: parse error before `RT_TASK'
rt_ipc.h:64: warning: no semicolon at end of struct or union
rt_ipc.h:66: parse error before `rte'
rt_ipc.h:66: warning: type defaults to `int' in declaration of `rte'
rt_ipc.h:66: warning: data definition has no type or storage class
rt_ipc.h:67: parse error before `*'
rt_ipc.h:67: warning: type defaults to `int' in declaration of `sem_at'
rt_ipc.h:67: warning: data definition has no type or storage class
rt_ipc.h:68: parse error before `*'
rt_ipc.h:68: warning: type defaults to `int' in declaration of `mq_at'
rt_ipc.h:68: warning: data definition has no type or storage class
rt_ipc.h:70: parse error before `}'
rt_ipc.h:70: warning: type defaults to `int' in declaration of `RT_TASK_IPC'
rt_ipc.h:70: warning: data definition has no type or storage class
rt_ipc.h:83: parse error before `*'
rt_ipc.h:83: warning: function declaration isn't a prototype
rt_ipc.h:84: parse error before `*'
rt_ipc.h:84: warning: function declaration isn't a prototype
rt_ipc.h:85: parse error before `*'
rt_ipc.h:85: warning: function declaration isn't a prototype
rt_ipc.h:86: parse error before `*'
rt_ipc.h:86: warning: function declaration isn't a prototype
rt_ipc.h:87: parse error before `*'
rt_ipc.h:87: warning: function declaration isn't a prototype
rt_ipc.h:91: parse error before `*'
rt_ipc.h:91: `rt_task_ipc_init' declared as function returning a function
rt_ipc.h:91: warning: function declaration isn't a prototype
rt_ipc.h:92: parse error before `int'
rt_ipc.h:93: parse error before `*'
rt_ipc.h:93: warning: function declaration isn't a prototype
rt_ipc.h:95: parse error before `*'
rt_ipc.h:95: warning: function declaration isn't a prototype
rt_ipc.h:96: parse error before `*'
rt_ipc.h:96: warning: function declaration isn't a prototype
rt_ipc.h:97: parse error before `*'
rt_ipc.h:97: warning: function declaration isn't a prototype
rt_ipc.h:98: parse error before `*'
rt_ipc.h:98: warning: function declaration isn't a prototype
rt_ipc.c:57: parse error before `*'
rt_ipc.c:58: warning: function declaration isn't a prototype
rt_ipc.c: In function `rt_sem_init':
rt_ipc.c:60: `init_val' undeclared (first use in this function)
rt_ipc.c:60: (Each undeclared identifier is reported only once
rt_ipc.c:60: for each function it appears in.)
rt_ipc.c:60: `type' undeclared (first use in this function)
rt_ipc.c:64: `sem' undeclared (first use in this function)
rt_ipc.c: At top level:
rt_ipc.c:81: parse error before `*'
rt_ipc.c:82: warning: function declaration isn't a prototype
rt_ipc.c: In function `rt_sem_destroy':
rt_ipc.c:84: `sem' undeclared (first use in this function)
rt_ipc.c: At top level:
rt_ipc.c:98: parse error before `*'
rt_ipc.c:99: warning: function declaration isn't a prototype
rt_ipc.c: In function `unlink_sem_task':
rt_ipc.c:100: `to_unlink' undeclared (first use in this function)
rt_ipc.c:103: `sem' undeclared (first use in this function)
rt_ipc.c: At top level:
rt_ipc.c:113: parse error before `*'
rt_ipc.c:114: warning: function declaration isn't a prototype
rt_ipc.c: In function `unlink_mq_task':
rt_ipc.c:115: `to_unlink' undeclared (first use in this function)
rt_ipc.c:118: `mq' undeclared (first use in this function)
rt_ipc.c: At top level:
rt_ipc.c:137: parse error before `*'
rt_ipc.c:138: warning: function declaration isn't a prototype
rt_ipc.c: In function `rt_sem_post':
rt_ipc.c:141: `sem' undeclared (first use in this function)
rt_ipc.c:145: `to_run' undeclared (first use in this function)
rt_ipc.c:150: `t' undeclared (first use in this function)
rt_ipc.c:150: warning: statement with no effect
rt_ipc.c:160: parse error before `)'
rt_ipc.c:169: parse error before `)'
rt_ipc.c:170: warning: implicit declaration of function `rt_task_wakeup'
rt_ipc.c: At top level:
rt_ipc.c:193: parse error before `*'
rt_ipc.c:194: warning: function declaration isn't a prototype
rt_ipc.c: In function `rt_sem_wait':
rt_ipc.c:197: `sem' undeclared (first use in this function)
rt_ipc.c:204: `timeout' undeclared (first use in this function)
rt_ipc.c:208: `to_add' undeclared (first use in this function)
rt_ipc.c:208: parse error before `)'
rt_ipc.c:217: parse error before `)'
rt_ipc.c:222: warning: implicit declaration of function `rt_task_suspend'
rt_ipc.c:227: parse error before `)'
rt_ipc.c:230: parse error before `)'
rt_ipc.c: At top level:
rt_ipc.c:257: parse error before `*'
rt_ipc.c:258: warning: function declaration isn't a prototype
rt_ipc.c: In function `rt_sem_trywait':
rt_ipc.c:261: `sem' undeclared (first use in this function)
rt_ipc.c: At top level:
rt_ipc.c:286: parse error before `*'
rt_ipc.c:286: `rt_task_ipc_init' declared as function returning a function
rt_ipc.c:286: warning: function declaration isn't a prototype
rt_ipc.c:286: parse error before `int'
rt_ipc.c:293: warning: type defaults to `int' in declaration of `ret'
rt_ipc.c:293: warning: implicit declaration of function `rt_task_init'
rt_ipc.c:293: request for member `rtl_task' in something not a structure or union
rt_ipc.c:293: `fn' undeclared here (not in a function)
rt_ipc.c:293: `data' undeclared here (not in a function)
rt_ipc.c:293: `stack_size' undeclared here (not in a function)
rt_ipc.c:293: `priority' undeclared here (not in a function)
rt_ipc.c:293: initializer element is not constant
rt_ipc.c:293: warning: data definition has no type or storage class
rt_ipc.c:294: parse error before `if'
rt_ipc.c:297: parse error before `&'
rt_ipc.c:312: parse error before `*'
rt_ipc.c:313: warning: function declaration isn't a prototype
rt_ipc.c: In function `rt_task_ipc_delete':
rt_ipc.c:315: request for member `magic' in something not a structure or union
rt_ipc.c:323: request for member `sem_at' in something not a structure or union
rt_ipc.c:324: request for member `rte' in something not a structure or union
rt_ipc.c:324: request for member `sem_at' in something not a structure or union
rt_ipc.c:325: request for member `mq_at' in something not a structure or union
rt_ipc.c:326: request for member `rte' in something not a structure or union
rt_ipc.c:326: request for member `mq_at' in something not a structure or union
rt_ipc.c:328: warning: implicit declaration of function `rt_task_delete'
rt_ipc.c:328: request for member `rtl_task' in something not a structure or union
rt_ipc.c: At top level:
rt_ipc.c:365: parse error before `*'
rt_ipc.c:366: warning: function declaration isn't a prototype
rt_ipc.c: In function `rt_mq_init':
rt_ipc.c:368: `max_msgs' undeclared (first use in this function)
rt_ipc.c:368: `msg_size' undeclared (first use in this function)
rt_ipc.c:372: `mq' undeclared (first use in this function)
rt_ipc.c: At top level:
rt_ipc.c:398: parse error before `*'
rt_ipc.c:399: warning: function declaration isn't a prototype
rt_ipc.c: In function `rt_mq_destroy':
rt_ipc.c:401: `mq' undeclared (first use in this function)
rt_ipc.c: At top level:
rt_ipc.c:423: parse error before `*'
rt_ipc.c:424: warning: function declaration isn't a prototype
rt_ipc.c: In function `enqueue':
rt_ipc.c:425: `prio' undeclared (first use in this function)
rt_ipc.c:427: `msg' undeclared (first use in this function)
rt_ipc.c:428: `mq' undeclared (first use in this function)
rt_ipc.c: At top level:
rt_ipc.c:456: parse error before `*'
rt_ipc.c:457: warning: function declaration isn't a prototype
rt_ipc.c: In function `dequeue':
rt_ipc.c:458: `msg' undeclared (first use in this function)
rt_ipc.c:459: `mq' undeclared (first use in this function)
rt_ipc.c: At top level:
rt_ipc.c:486: parse error before `*'
rt_ipc.c:487: warning: function declaration isn't a prototype
rt_ipc.c: In function `rt_mq_send':
rt_ipc.c:489: `mq' undeclared (first use in this function)
rt_ipc.c:500: `wait' undeclared (first use in this function)
rt_ipc.c:504: `to_add' undeclared (first use in this function)
rt_ipc.c:504: parse error before `)'
rt_ipc.c:513: parse error before `)'
rt_ipc.c:520: parse error before `)'
rt_ipc.c:523: parse error before `)'
rt_ipc.c:532: `msg' undeclared (first use in this function)
rt_ipc.c:532: `prio' undeclared (first use in this function)
rt_ipc.c:538: `t' undeclared (first use in this function)
rt_ipc.c:538: `to_run' undeclared (first use in this function)
rt_ipc.c:538: warning: left-hand operand of comma expression has no effect
rt_ipc.c:544: warning: left-hand operand of comma expression has no effect
rt_ipc.c:552: parse error before `)'
rt_ipc.c:555: parse error before `)'
rt_ipc.c:501: warning: unreachable code at beginning of switch statement
rt_ipc.c: At top level:
rt_ipc.c:584: parse error before `*'
rt_ipc.c:585: warning: function declaration isn't a prototype
rt_ipc.c: In function `rt_mq_receive':
rt_ipc.c:587: `mq' undeclared (first use in this function)
rt_ipc.c:598: `wait' undeclared (first use in this function)
rt_ipc.c:602: `to_add' undeclared (first use in this function)
rt_ipc.c:602: parse error before `)'
rt_ipc.c:611: parse error before `)'
rt_ipc.c:618: parse error before `)'
rt_ipc.c:621: parse error before `)'
rt_ipc.c:630: `msg' undeclared (first use in this function)
rt_ipc.c:636: `t' undeclared (first use in this function)
rt_ipc.c:636: `to_run' undeclared (first use in this function)
rt_ipc.c:636: warning: left-hand operand of comma expression has no effect
rt_ipc.c:642: warning: left-hand operand of comma expression has no effect
rt_ipc.c:650: parse error before `)'
rt_ipc.c:653: parse error before `)'
rt_ipc.c:599: warning: unreachable code at beginning of switch statement
rt_ipc.c: At top level:
rt_ipc.c:669: parse error before `rt_sem_t'
rt_ipc.c:669: warning: no semicolon at end of struct or union
rt_ipc.c:670: warning: type defaults to `int' in declaration of `RT_IPC_FIFO'
rt_ipc.c:670: warning: data definition has no type or storage class
rt_ipc.c:672: parse error before `ipc_fifos'
rt_ipc.c:672: warning: type defaults to `int' in declaration of `ipc_fifos'
rt_ipc.c:672: warning: data definition has no type or storage class
rt_ipc.c: In function `rtf_ipc_handler':
rt_ipc.c:684: request for member `sem' in something not a structure or union
rt_ipc.c: In function `rtf_ipc_create':
rt_ipc.c:710: request for member `sem' in something not a structure or union
rt_ipc.c: In function `rtf_ipc_destroy':
rt_ipc.c:726: request for member `sem' in something not a structure or union
rt_ipc.c: In function `rtf_receive':
rt_ipc.c:759: request for member `sem' in something not a structure or union
rt_ipc.c:776: request for member `sem' in something not a structure or union
rt_ipc.c: In function `rtf_send':
rt_ipc.c:821: request for member `sem' in something not a structure or union
rt_ipc.c:838: request for member `sem' in something not a structure or union
make: *** [rt_ipc.o] Error 1
-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
---
For more information on Real-Time Linux see:
http://www.rtlinux.org/rtlinux/