delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1997/11/07/19:18:20

From: "Carolyn Kelly-Pajot" <dehacked72 AT hotmail DOT com>
References: <63ul58$ars$1 AT news DOT sas DOT ab DOT ca>
Subject: Re: Newbie question, everyone should know this I don't.
Date: Fri, 7 Nov 1997 16:48:34 -0500
Lines: 31
Message-ID: <uVnxXZ868GA.185@upnetnews03>
Newsgroups: comp.os.msdos.djgpp
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp

steven AT freenet DOT edmonton DOT ab DOT ca wrote in message <63ul58$ars$1 AT news DOT sas DOT ab DOT ca>...
>What's the difference between linking and compiling? I know what compiling
>is... but linking is uncharted territory for myself.
>
>--------------+
>Windows 95: n.|
>       32 bit extensions and a graphical shell for a 16 bit patch to an
>       8 bit operating system originally coded for a 4 bit microprocessor,
>       written by a 2 bit company, that can't stand 1 bit of competition.

There are 4 programs run when converting a .C file to .EXE:

    Preprocessor - CPP.EXE replaces #includes with the actual file, #defines
with the actual definition, etc. Also remove comments. File is stored in temp
directory.
    Compiler - CC1(PLUS, OBJ).EXE converts output from CPP to assembly. CC1 is
C, CC1plus is C++, CC1OBJ is objective C.
    Assembler - AS.EXE converts output of CC1(*) or your own assembly files to
computer code. It is ready to be used, but not an EXE file. GCC stops here if
you tell it -c.
    Linker - LD.EXE combines multiple .O files and libraries to have a file
ready to be run by GO32.EXE.

    The compiler is the first 3. The linker combines multiple files, and links
the calls (ie functions) to the actual functions.

Oh yea,STUBIFY.EXE writes 2 kb to the start of the linkers output to make a full
.EXE file.


- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019