Path: utzoo!news-server.csri.toronto.edu!cs.utexas.edu!helps!bigtex!james From: james@bigtex.cactus.org (James Van Artsdalen) Newsgroups: comp.unix.sysv386 Subject: Re: Why can't elves cough? Message-ID: <55797@bigtex.cactus.org> Date: 8 Mar 91 01:45:18 GMT References: <27D314DF.1D4E@telly.on.ca> <6405@unix386.Convergent.COM> Reply-To: james@bigtex.cactus.org (James Van Artsdalen) Organization: Institute of Applied Cosmology, Austin TX Lines: 29 In <6405@unix386.Convergent.COM>, mburg@unix386.Convergent.COM (Mike Burg) wrote: | - Use gcc. Can it possibly be built to use the R4 libraries, while | having a run-time switch to produce either coff or elf? gcc produces assembler source. The format of the executable depends on that format the linker produces, not the assembly source. So if you use the SysVr4 linker, you get ELF output. > I've tried using GCC-1.37.1 (no Gnu ld or GAS) on SVR4. It's fine to > compile most things, but however it will gack on the #if machine(i386) > directives commonly found in /usr/include/sys files. Anyone else have > any luck? 1.38, 1.39? gcc 1.39 has a target "i386v4". It also has a special version of of fixincludes called "fixincludes-V4" that gets rid of the #machine nonsense. > The two big advantages with ELF is dynamic libraries (space saving) I still don't like the dynamic libraries. It makes executables slower to start (exec(2) time), and more importantly, the code in a shared dynamic library is worse/slower than code in a non-shared library. In SysVr3 you had to make changes to the source to make a shared library, but at least there wasn't as big a performance penalty. -- James R. Van Artsdalen james@bigtex.cactus.org "Live Free or Die" Dell Computer Co 9505 Arboretum Blvd Austin TX 78759 512-338-8789