![]() | |
![]() |
| | Thread Tools | Display Modes |
#1
| |||
| |||
|
|
Should I be able to compile with gcc 3.3.2 (from sunfreeware) on solaris 10? |
|
gcc -DPOSIX -Wall -Wmissing-prototypes -Wpointer-arith -Wendif-labels -fno-strict-aliasing -I../../src/port -DFRONTEND -I../../src/include -c -o exec.o exec.c In file included from /usr/include/sys/wait.h:24, from exec.c:26: /usr/include/sys/siginfo.h:259: error: parse error before "ctid_t" /usr/include/sys/siginfo.h:292: error: parse error before '}' token |
#2
| |||
| |||
|
|
It seems that rather than using the /usr/include/sys/types.h, gcc 3.3.2 is instead, using a version of the same file, located at /usr/local/lib/gcc-lib/sparc-sun-solaris2.10/3.3.2/include/sys, which does not have a definition for ctid_t |
#3
| |||
| |||
|
|
This is standard practice for gcc: it tries to use "cleaned up" versions of system headers that will not elicit useless warnings from gcc. It's a good idea, actually, because the degree of insanity in vendor-supplied system headers is pretty depressing. But if the gcc install process generated an invalid "cleanup" file then you need to take that up with the gcc boys, not us. |
#4
| |||
| |||
|
|
I wrote: This is standard practice for gcc: it tries to use "cleaned up" versions of system headers that will not elicit useless warnings from gcc. It's a good idea, actually, because the degree of insanity in vendor-supplied system headers is pretty depressing. But if the gcc install process generated an invalid "cleanup" file then you need to take that up with the gcc boys, not us. On rereading this, a nearly-dead neuron fired --- I have seen problems of this sort arise when someone took a gcc installation generated on NiftyVendorUnix M.N and copied it verbatim to NiftyVendorUnix M.N+1, or indeed any release other than M.N. That nearly-dead neuron has value. The problem is that most people are |
#5
| |||
| |||
|
|
Tom Lane wrote: I wrote: This is standard practice for gcc: it tries to use "cleaned up" versions of system headers that will not elicit useless warnings from gcc. It's a good idea, actually, because the degree of insanity in vendor-supplied system headers is pretty depressing. But if the gcc install process generated an invalid "cleanup" file then you need to take that up with the gcc boys, not us. On rereading this, a nearly-dead neuron fired --- I have seen problems of this sort arise when someone took a gcc installation generated on NiftyVendorUnix M.N and copied it verbatim to NiftyVendorUnix M.N+1, or indeed any release other than M.N. That nearly-dead neuron has value. The problem is that most people are getting the Solaris 10 beta builds whose headers conflict with the gcc 3.3.2 package's 'adapted' headers they are acquiring from sunfreeware.com, which, along with distributing other binary packages, is the place referred to by gcc.gnu.org for pre-built Solaris binaries. All the original poster needs to do is rebuild the gcc's 'adapted' headers with: # cd /usr/local/lib/gcc-lib/i386-pc-solaris2.10/3.3.2/install-tools # ./mkheaders and they should be good to go.... |
![]() |
| Thread Tools | |
| Display Modes | |
| |