tbetz@dasys1.uucp (Tom Betz) (05/27/90)
I'm trying unsuccessfully to compile Perl 3.0, PL 8, under Xenix 2.3.1. I have the PL4 Xenix patch, but it seems to break later patches, so I have not installed it. The make is failing while trying to compile dolist.c with repetetive "error C2037: left of 'tm_*' specifies undefined struct/union" messages, where '*' is replaced with 'sec','min','hour','mday','mon','year','wday','yday', and 'isdat'. It appears that something is wrong with the way it is dealing with the time libraries. Can anyone advise me what I can do to fix this? Do patches > 8 fix this? All patches, fixes, and advice are welcome. Also, is there a Postscript --> nroff translator or Postscript --> ASCII translator out there, so I can use the Perl reference manual that was posted recently? I don't have a Postscript printer available to me. Thank you. -- "I don't run - I tend to black my eyes." - D.Parton | hombre!marob!upaya!tbetz ----------------------------------------------------| tbetz@dasys1.UUCP "The conventional view serves to protect us | Tom Betz - GBS from the painful job of thinking." - J.K. Galbraith | (914) 375-1510
campbell@Thalatta.COM (Bill Campbell) (05/28/90)
In article <1990May27.010055.5591@dasys1.uucp> tbetz@dasys1.UUCP (Tom Betz) writes: >I'm trying unsuccessfully to compile Perl 3.0, PL 8, under Xenix >2.3.1. I have the PL4 Xenix patch, but it seems to break later >patches, so I have not installed it. > >The make is failing while trying to compile dolist.c with >repetetive "error C2037: left of 'tm_*' specifies undefined >struct/union" messages, where '*' is replaced with >'sec','min','hour','mday','mon','year','wday','yday', and 'isdat'. > ...deleted The problem is somewhat buggy include files in xenix, particularly <time.h> does some typedefs that are duplicated in <sys/types.h>. I removed the duplicated typedef from <time.h> and inserted an #include <sys/types.h> in the <time.h> file. This requires that you put ``wrappers'' on all your include files so that it doesn't matter if they are included more than once: #ifndef H_FILENAME /*{*/ #define H_FILENAME . body of include #endif /* H_FILENAME }*/ Where H_FILENAME is unique to each include file. This allows you to include the file more than once without problems since the second time through the first ifndef is false. -- ....microsoft--\ Bill Campbell; Celestial Software ...uw-entropy----!thebes!camco!bill 6641 East Mercer Way ....fluke------/ Mercer Island, Wa 98040 ....hplsla----/ (206) 232-4164