[vbox-dev] FreeBSD 7.0-RELEASE build problems

nolan de souza nolandsouza at gmail.com
Fri Oct 3 07:05:42 GMT 2008

I'm hitting build problems in src/VBox/Runtime:

kBuild: Compiling RuntimeR0 -
/usr/home/nolan/vbox/trunk/src/VBox/Runtime/r3/posix/timer-posix.cpp: In
function 'int rttimerThread(RTTHREADINT*, void*)':
error: 'struct siginfo_t' has no member named '_sifields'
kBuild: Compiling RuntimeR0 -
kmk[2]: ***
Error 1
The failing command:
    @g++ -c -O2 -g -Wall -pedantic -Wno-long-long -Wno-trigraphs
-Wno-variadic-macros -pipe -O2 -mtune=generic -fno-omit-frame-pointer
-fno-strict-aliasing -fvisibility-inlines-hidden -fvisibility=hidden
-I/usr/local/include -I/usr/home/nolan/vbox/trunk/src/VBox/Runtime/include
-I/usr/home/nolan/vbox/trunk/src/libs/liblzf-1.51 -I/usr/include
-I/usr/X11R6/include -I/usr/local/include
-I/usr/home/nolan/vbox/trunk/out/freebsd.x86/release -DVBOX -DVBOX_OSE
-Wp,-MP -o
kmk[2]: *** Waiting for unfinished jobs....
kmk[2]: Leaving directory `/usr/home/nolan/vbox/trunk/src/VBox/Runtime'
kmk[1]: *** [pass_libraries_before] Error 2
kmk[1]: Leaving directory `/usr/home/nolan/vbox/trunk/src'
kmk: *** [pass_libraries_before] Error 2

Seems to me like the "_sifields" is no longer available with "struct
siginfo_t". Here is the struct from /usr/include/sys/signal.h. Anyone has an
idea how the missing fields should map?

#if __POSIX_VISIBLE >= 199309 || __XSI_VISIBLE
typedef struct __siginfo {
        int     si_signo;               /* signal number */
        int     si_errno;               /* errno association */
         * Cause of signal, one of the SI_ macros or signal-specific
         * values, i.e. one of the FPE_... values for SIGFPE.  This
         * value is equivalent to the second argument to an old-style
         * FreeBSD signal handler.
        int     si_code;                /* signal code */
        __pid_t si_pid;                 /* sending process */
        __uid_t si_uid;                 /* sender's ruid */
        int     si_status;              /* exit value */
        void    *si_addr;               /* faulting instruction */
        union sigval si_value;          /* signal value */
        union   {
                struct {
                        int     _trapno;/* machine specific trap code */
                } _fault;
                struct {
                        int     _timerid;
                        int     _overrun;
                } _timer;
                struct {
                        int     _mqd;
                } _mesgq;
                struct {
                        long    _band;          /* band event for SIGPOLL */
                } _poll;                        /* was this ever used ? */
                struct {
                        long    __spare1__;
                        int     __spare2__[7];
                } __spare__;
        } _reason;
} siginfo_t;

- Nolan.

nolan de souza, bangalore, mobile: +91 9886 44 6962.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.virtualbox.org/pipermail/vbox-dev/attachments/20081003/dcdf3481/attachment.html>

More information about the vbox-dev mailing list