Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/3/84; site grkermi.UUCP Path: utzoo!linus!philabs!cmcl2!seismo!harvard!talcott!panda!genrad!grkermi!eric From: eric@grkermi.UUCP (Eric N. Starkman) Newsgroups: net.lang.c,net.lang.f77 Subject: Re: VAX VMS C / UNIX C Compatibility -- Need Info Message-ID: <541@grkermi.UUCP> Date: Thu, 8-Aug-85 10:22:14 EDT Article-I.D.: grkermi.541 Posted: Thu Aug 8 10:22:14 1985 Date-Received: Sun, 11-Aug-85 06:40:37 EDT References: <488@rdin.UUCP> Reply-To: ens@panda.UUCP (Eric N. Starkman) Organization: GenRad, Inc., Concord, Mass. Lines: 26 Xref: linus net.lang.c:5432 net.lang.f77:301 In article <488@rdin.UUCP> perl@rdin.UUCP (Robert Perlberg) writes: >Is the VAX VMS C-compiler compatible with UNIX? That is, can I take >C files that compiled under UNIX and compile them under VMS with no >changes other than the shell commands inside of system() calls? A guy >in my office says that to hope for this is naive at best, but I thought >that this ability was supposed to be a feature of C. VMS C does a pretty good job of looking like Unix C, but there are a number of things under the UNIX operating system that it's sort of difficult to emulate under VMS. Consider stat(2), for instance; the nature of the VMS file system just doesn't lend itself to duplicating that call. >Another thing I'm looking for under VMS is the ability to load both >C and FORTRAN object files into one executable. Does anyone know if >this works? Object code is object code. As far as sharing data, VMS C externs correspond to FORTRAN common blocks. Each extern resides in it's own program section. VMS C also has 'global' types which correspond to a global symbol in assembly language. (All from the VAX/VMS C manual, V1.0, chapters 10 and 11) -Eric Starkman arpa: starkman@athena.MIT.EDU uucp: ...decvax!genrad!panda!ens