Title | Linux build fails. |
Status | closed |
Priority | essential |
Assigned user | David Jones |
Organization | Ravenbrook |
Description | Linux build fails. On the current master (change level 161906), I get: lii4gc: lii4gc/hi/lockli.o lii4gc: lii4gc/hi/thlii4.o lii4gc: lii4gc/hi/pthrdext.o cc1: warnings being treated as errors pthrdext.c: In function ‘PThreadextSuspend’: pthrdext.c:332: warning: implicit declaration of function ‘pthread_kill’ pthrdext.c:332: warning: nested extern declaration of ‘pthread_kill’ make[2]: *** [lii4gc/hi/pthrdext.o] Error 1 make[1]: *** [target] Error 2 make: *** [amcss] Error 2 (Yes, I really did get those funny characters, they appeared as typographically correct open- and close- single quotes. The spacing was wrong, naturally). I'm running on Fedora Core 6 on a Parallels VM: $ uname -a Linux localhost.localdomain 2.6.18-1.2798.fc6 #1 SMP Mon Oct 16 14:54:20 EDT 2006 i686 i686 i386 GNU/Linux |
Analysis | Looks like some #include or open-sesame magic I guess. 2007-03-09 DRJ: Seems that more recent version of linux are more careful with their open-sesame magic. In particular "#define _POSIX_C_SOURCE 1 " is not sufficient to get a declaration of pthread_kill from <signal.h>. Fixed by changing POSIX_C_SOURCE 1 to _XOPEN_SOURCE 500 (to claim that we want X/Open XSH5 conformance). |
How found | manual_test |
Observed in | 1.107.0 |
Created by | David Jones |
Created on | 2007-03-09 11:38:28 |
Last modified by | David Jones |
Last modified on | 2007-03-09 12:34:59 |
History | 2007-03-09 DRJ Created. 2007-03-09 DRJ Analysed. Fixed. |
Change | Effect | Date | User | Description |
---|---|---|---|---|
161907 | closed | 2007-03-09 12:31:34 | David Jones | MPS: Fixing linux builds. Recent Linuxes are more careful with their open-sesame magic. |