Bruce Momjian wrote:
> Luojia Chen wrote:
>
>>Hi,
>>
>>Please see my inline reply.
>>
>>Bruce Momjian wrote:
>>
>>>Would you tell use what is on this line?
>>>
>>> /usr/include/sys/siginfo.h:259:
>>
>>ctid_t __ctid; /* contract ID */
>
>
> OK, do a 'grep' and find out what /usr/include/* file contains the
> definiation of ctid_t.
Hi,Bruce,
The ctid_t was defined in /usr/include/sys/types.h
typedef id_t ctid_t;
>>>Seems you need an extra #include for that platform. Try adding
>>>"#include <sys/types.h>" before the signal.h include and see if that
>>>helps.
>>
>>Adding the "#include <sys/types.h>" in the "/usr/include/sys/signal.h"
>>and "/usr/include/signal.h" doesn't help.
>
>
> OK.
>
>
>>>If your signal.h can't be used without a previous include being present
>>>it sounds like a bug in the operating system.
>>>
>>>My BSD system has for the signal manual page:
>>>
>>> #include <signal.h>
>>>
>>> void
>>> *signal(sig, func());
>>>
>>>Does your signal manual page have another #include at the top?
>>
>>No, I didn't see any other #include at the top for the manual page
>>It shows as:
>>-----------
>> #include <signal.h>
>>
>> void (*signal (int sig, void (*disp)(int)))(int);
>
>
> OK, try a simple test. Create a small C file that just includes
> signal.h and see if it compiles. If it doesn't, that manual page is
> wrong, at the least.
>
A simple test.c as bellow as you suggested:
#include <signal.h>
#include <stdio.h>
int main()
{
printf("just a test");
return 0;
}
It compiled and run well without any error.
Thanks,
Jenny
--
Jenny Chen
Software Engineer
Market Development Engineering
v-mail:(510) 574-7149
SUN Microsystems