Page 111 - C-Language
P. 111

Chapter 13: Compilation




        Introduction



        The C language is traditionally a compiled language (as opposed to interpreted). The C Standard
        defines translation phases, and the product of applying them is a program image (or compiled
        program). In c11, the phases are listed in §5.1.1.2.


        Remarks




          Filename
                            Description
          extension

          .c                Source file. Usually contains definitions and code.


          .h                Header file. Usually contains declarations.

          .o                Object file. Compiled code in machine language.


          .obj              Alternative extension for object files.


          .a                Library file. Package of object files.

          .dll              Dynamic-Link Library on Windows.


          .so               Shared object (library) on many Unix-like systems.

          .dylib            Dynamic-Link Library on OSX (Unix variant).


                            Windows executable file. Formed by linking object files and library files. In
          .exe, .com        Unix-like systems, there is no special file name extension for executable
                            file.


          POSIX c99 compiler flags       Description

          -o filename                    Output file name eg. (bin/program.exe, program)


          -I directory                   search for headers in direrctory.

          -D name                        define macro name


          -L directory                   search for libraries in directory.


          -l name                        link library libname.


        Compilers on POSIX platforms (Linux, mainframes, Mac) usually accept these options, even if
        they are not called c99.


        https://riptutorial.com/                                                                               87
   106   107   108   109   110   111   112   113   114   115   116