Revision history for CompilerCmdLine


Revision [21978]

Last edited on 2017-11-11 01:12:32 by fxm [Added missing options: -pic, -showincludes]
Additions:
Sets the compiler backend (default is 'gas')
Sets the assembler format for Asm block
Set the optimization level (-gen gcc)
Sets miscellaneous or experimental options
=={{fbdoc item="keyword" value="CompilerOptpic|-pic"}}==
Generate position-independent code (non-x86 Unix shared libs)
Show compiler version on the command line, do not compile or link
=={{fbdoc item="keyword" value="CompilerOptshowincludes|-showincludes"}}==
Display a tree of file names of #included files
Deletions:
Sets the compiler backend (default is 'gas').
Sets the assembler format for Asm block.
Set the optimization level (-gen gcc).
Sets miscellaneous or experimental options.
Show compiler version on the command line, do not compile or link.


Revision [21971]

Edited on 2017-11-04 16:12:45 by fxm [Corrected typo]
Additions:
Same as ##-ex##, plus array bounds and non-null-pointer checking
Deletions:
Same as ##-ex## plus array bounds and null-pointer checking


Revision [21888]

Edited on 2017-09-02 13:31:28 by fxm [Typo : overides -> overrides]
Additions:
Select language mode: ##fb##, ##fblite##, ##qb##, ##deprecated## (overrides statements in code)
Deletions:
Select language mode: ##fb##, ##fblite##, ##qb##, ##deprecated## (overides statements in code)


Revision [20749]

Edited on 2016-03-12 10:37:45 by fxm [Formatting]
Additions:











Revision [19898]

Edited on 2016-02-10 15:45:05 by DkLwikki [Update link format]
Additions:
- [[CatPgCompOpt|Compiler Options]]
- [[CompilerInstalling|Installing FreeBASIC]]
- [[CompilerRunning|Invoking the FreeBASIC compiler]]
Deletions:
- [[CatPgCompOpt Compiler Options]]
- [[CompilerInstalling Installing FreeBASIC]]
- [[CompilerRunning Invoking the FreeBASIC compiler]]


Revision [17797]

Edited on 2015-09-17 05:38:30 by FxMwikki [Added how to include an icon in a FB executable program]
Additions:
FB_PROGRAM_ICON ICON "appicon.ico"
Deletions:
FB_PROGRAM_ICON ICON DISCARDABLE "appicon.ico"


Revision [17796]

Edited on 2015-09-16 16:10:44 by FxMwikki [Added how to include an icon in a FB executable program]
Additions:
(where appicon.ico is the name of icon)
- Then when compiling program, add appicon.rc in the list of files to compile.
Deletions:

(where appicon.ico is the name of your icon)
- Then when you compile your program, add appicon.rc in the list of files to compile.


Revision [17795]

Edited on 2015-09-16 14:20:56 by FxMwikki [Added how to include an icon in a FB executable program]
Additions:
**Note:** How to include an icon in a FB executable program
There is a simple command line option to compile a FB program into an executable with an Icon:
- Create a *.rc file, for example appicon.rc, with this info:
FB_PROGRAM_ICON ICON DISCARDABLE "appicon.ico"
(where appicon.ico is the name of your icon)
- Then when you compile your program, add appicon.rc in the list of files to compile.


Revision [17123]

Edited on 2014-07-27 14:14:43 by FxMwikki [Add compiler option '-asm intel/att']
Additions:
Sets the assembler format for Asm block.
Deletions:
Sets the assembler format.


Revision [17120]

Edited on 2014-07-27 03:55:15 by FxMwikki [Add compiler option '-asm intel/att']
Additions:
=={{fbdoc item="keyword" value="CompilerOptasm|-asm < format >"}}==
Sets the assembler format.


Revision [16708]

Edited on 2013-03-28 14:11:35 by DkLwikki [Add link for -print]
Additions:
=={{fbdoc item="keyword" value="CompilerOptprint|-print < option >"}}==
Display certain information (##host##, ##target##, etc.)


Revision [16328]

Edited on 2012-09-01 10:32:34 by CountingPine [Add links to -rr and -RR]
Additions:
Compile into intermediate file(s) only, do not assemble or link
=={{fbdoc item="keyword" value="CompilerOptrr|-rr"}}==
Do not delete the intermediate file(s)
=={{fbdoc item="keyword" value="CompilerOptrrupp|-RR"}}==


Revision [16250]

Edited on 2012-08-11 19:21:24 by CountingPine [Add links to -rr and -RR]
Additions:
At its simplest, **fbc** takes a source file as a command-line argument and produces an executable file. It does this by compiling the source file (.bas) into an assembly (.asm) file, then compiling this into an object file (.o) using GAS and finally linking using LD this object file to other object files and libraries it needs to run, producing the final executable file. The assembly and compiled object files are deleted at this point by default. For example, the following command,
Deletions:
At it's simplest, **fbc** takes a source file as a command-line argument and produces an executable file. It does this by compiling the source file (.bas) into an assembly (.asm) file, then compiling this into an object file (.o) using GAS and finally linking using LD this object file to other object files and libraries it needs to run, producing the final executable file. The assembly and compiled object files are deleted at this point by default. For example, the following command,


Revision [15564]

Edited on 2011-12-16 07:29:01 by DkLwikki [Add -static page]
Additions:
=={{fbdoc item="keyword" value="CompilerOptstatic|-static"}}==
Prefer static libraries over dynamic ones when linking
Deletions:
{{fbdoc item="keyword" value="CompilerOptstatic|-static"}}
- Prefer static libraries over dynamic ones when linking


Revision [15563]

Edited on 2011-12-16 07:28:25 by DkLwikki [Add -static page]
Additions:
{{fbdoc item="keyword" value="CompilerOptstatic|-static"}}
- Prefer static libraries over dynamic ones when linking


Revision [15108]

Edited on 2011-07-08 11:47:44 by DkLwikki [Add -static page]
Additions:
Compile into asm file(s) only, do not assemble or link
Compile and assemble source file only, do not link
Deletions:
Write asm only, do not compile or link
Compile only, do not link


Revision [14972]

Edited on 2010-10-26 11:01:18 by DkLwikki [Updated/reordered command line options]
Additions:
<<{{fbdoc item="section" value="Source code"}}
=={{fbdoc item="keyword" value="CompilerOptb|-b < name >"}}==
Add a source file to compilation
=={{fbdoc item="keyword" value="CompilerOpti|-i < name >"}}==
Add a path to search for include files
=={{fbdoc item="keyword" value="CompilerOptinclude|-include < name >"}}==
Include a header file on each source compiled
=={{fbdoc item="keyword" value="CompilerOptd|-d < name=val >"}}==
Add a preprocessor's define
=={{fbdoc item="keyword" value="CompilerOptlang|-lang < name >"}}==
Select language mode: ##fb##, ##fblite##, ##qb##, ##deprecated##
=={{fbdoc item="keyword" value="CompilerOptforcelang|-forcelang < name >"}}==
Select language mode: ##fb##, ##fblite##, ##qb##, ##deprecated## (overides statements in code)
{{fbdoc item="section" value="Code generation"}}
=={{fbdoc item="keyword" value="CompilerOpttarget|-target < platform >"}}==
Set the target platform for cross compilation
=={{fbdoc item="keyword" value="CompilerOptgen|-gen < backend >"}}==
Sets the compiler backend (default is 'gas').
=={{fbdoc item="keyword" value="CompilerOptarch|-arch < type >"}}==
Set target architecture (default: ##486##)
=={{fbdoc item="keyword" value="CompilerOptoptimization|-O < level >"}}==
Set the optimization level (-gen gcc).
=={{fbdoc item="keyword" value="CompilerOptvec|-vec < level >"}}==
Set level of vector optimizations enabled by the compiler (default: ##0##)
=={{fbdoc item="keyword" value="CompilerOptfpu|-fpu < type >"}}==
Set the floating point arithmetics unit (default: ##FPU##)
=={{fbdoc item="keyword" value="compileroptfpmode|-fpmode < type >"}}==
Select between fast and accurate floating-point operations (default: ##PRECISE##)
=={{fbdoc item="keyword" value="CompilerOptz|-z < value >"}}==
Sets miscellaneous or experimental options.
{{fbdoc item="section" value="Compilation"}}
=={{fbdoc item="keyword" value="CompilerOptm|-m < name >"}}==
Main file without extension, the entry point (default is the first .bas file on the command line)
=={{fbdoc item="keyword" value="CompilerOptg|-g"}}==
Add debug info
=={{fbdoc item="keyword" value="CompilerOptprofile|-profile"}}==
Enable function profiling
=={{fbdoc item="keyword" value="CompilerOpte|-e"}}==
Add error checking
=={{fbdoc item="keyword" value="CompilerOptex|-ex"}}==
Add error checking with RESUME support
=={{fbdoc item="keyword" value="CompilerOptexx|-exx"}}==
Same as ##-ex## plus array bounds and null-pointer checking
=={{fbdoc item="keyword" value="CompilerOptWa|-Wa < opt >"}}==
Pass options to GAS (separated by commas)
=={{fbdoc item="keyword" value="CompilerOptWc|-Wc < opt >"}}==
Pass options to GCC (separated by commas)
=={{fbdoc item="keyword" value="CompilerOpto|-o < name >"}}==
Set object file path/name (must be passed after the .bas file)
<<>>{{fbdoc item="section" value="Linking"}}
=={{fbdoc item="keyword" value="CompilerOpta|-a < name >"}}==
Add an object file to linker's list
=={{fbdoc item="keyword" value="CompilerOptl|-l < name >"}}==
Add a library file to linker's list
=={{fbdoc item="keyword" value="CompilerOptp|-p < name >"}}==
Add a path to search for libraries
=={{fbdoc item="keyword" value="CompilerOptmt|-mt"}}==
Link with thread-safe runtime library
=={{fbdoc item="keyword" value="CompilerOptnodeflibs|-nodeflibs"}}==
Do not include the default libraries
=={{fbdoc item="keyword" value="CompilerOptmap|-map < name >"}}==
Save the linking map to file name
=={{fbdoc item="keyword" value="CompilerOptWl|-Wl < opt >"}}==
Pass options to LD (separated by commas)
=={{fbdoc item="keyword" value="CompilerOptexport|-export"}}==
Export symbols for dynamic linkage
=={{fbdoc item="keyword" value="CompilerOptlib|-lib"}}==
Create a static library
=={{fbdoc item="keyword" value="CompilerOptdylib|-dylib"}}==
Create a DLL, including the import library
=={{fbdoc item="keyword" value="CompilerOptdll|-dll"}}==
Create a DLL, including the import library. (Same as ##-dylib##)
=={{fbdoc item="keyword" value="CompilerOptx|-x < name >"}}==
Set executable/library path/name
{{fbdoc item="section" value="Behaviour"}}
=={{fbdoc item="keyword" value="CompilerOptprefix|-prefix < path >"}}==
Set the compiler prefix path
=={{fbdoc item="keyword" value="CompilerOptversion|-version"}}==
Show compiler version on the command line, do not compile or link.
=={{fbdoc item="keyword" value="CompilerOptv|-v"}}==
Be verbose
=={{fbdoc item="keyword" value="CompilerOptpp|-pp"}}==
Emit the preprocessed input file only, do not compile
=={{fbdoc item="keyword" value="CompilerOptr|-r"}}==
Write asm only, do not compile or link
=={{fbdoc item="keyword" value="CompilerOptc|-c"}}==
Compile only, do not link
=={{fbdoc item="keyword" value="CompilerOptrupp|-R"}}==
Do not delete the asm file(s)
=={{fbdoc item="keyword" value="CompilerOptcupp|-C"}}==
Do not delete the object file(s)
=={{fbdoc item="keyword" value="CompilerOptw|-w < value >"}}==
Set min warning level: ##all##, ##pedantic##, ##next## or a value
=={{fbdoc item="keyword" value="CompilerOptmaxerr|-maxerr < val >"}}==
Only stop parsing if <val> errors occurred
=={{fbdoc item="keyword" value="CompilerOptnoerrline|-noerrline"}}==
Do not show source line where error occurred
{{fbdoc item="section" value="Target specific"}}
=={{fbdoc item="keyword" value="CompilerOpts|-s < name >"}}==
Set subsystem (##gui##, ##console##)
=={{fbdoc item="keyword" value="CompilerOptt|-t < value >"}}==
Set stack size in kbytes (default: 1M)
{{fbdoc item="section" value="Meta"}}
=={{fbdoc item="keyword" value="CompilerOptoptfile|@< file >"}}==
Read (additional) command-line options from a file
Deletions:
<<{{fbdoc item="section" value="Compiling options"}}
{{fbdoc item="subsect" value="Source code"}}
=={{fbdoc item="keyword" value="CompilerOptb|-b < name >"}}==
Add a source file to compilation
=={{fbdoc item="keyword" value="CompilerOptc|-c"}}==
Compile only, do not link
=={{fbdoc item="keyword" value="CompilerOptr|-r"}}==
Write asm only, do not compile or link
=={{fbdoc item="keyword" value="CompilerOpto|-o < name >"}}==
Set object file path/name (must be passed after the .bas file)
=={{fbdoc item="keyword" value="CompilerOpti|-i < name >"}}==
Add a path to search for include files
=={{fbdoc item="keyword" value="CompilerOptinclude|-include < name >"}}==
Include a header file on each source compiled
=={{fbdoc item="keyword" value="CompilerOptd|-d < name=val >"}}==
Add a preprocessor's define
=={{fbdoc item="keyword" value="CompilerOptforcelang|-forcelang < name >"}}==
Select language compatibility: ##fb##, ##fblite##, ##qb##, ##deprecated## (overides statements in code)
=={{fbdoc item="keyword" value="CompilerOptlang|-lang < name >"}}==
Select language compatibility: ##fb##, ##fblite##, ##qb##, ##deprecated##
=={{fbdoc item="keyword" value="CompilerOptm|-m < name >"}}==
Main file without extension, the entry point (default is the first .bas file on the command line)
{{fbdoc item="subsect" value="Error checking and Debugging"}}
=={{fbdoc item="keyword" value="CompilerOptw|-w < value >"}}==
Set min warning level: ##all##, ##pedantic##, ##next## or a value
=={{fbdoc item="keyword" value="CompilerOpte|-e"}}==
Add error checking
=={{fbdoc item="keyword" value="CompilerOptex|-ex"}}==
Add error checking with RESUME support
=={{fbdoc item="keyword" value="CompilerOptexx|-exx"}}==
Same as ##-ex## plus array bounds and null-pointer checking
=={{fbdoc item="keyword" value="CompilerOptg|-g"}}==
Add debug info
=={{fbdoc item="keyword" value="CompilerOptnoerrline|-noerrline"}}==
Do not show source line where error occurred
=={{fbdoc item="keyword" value="CompilerOptprofile|-profile"}}==
Enable function profiling
=={{fbdoc item="keyword" value="CompilerOptmaxerr|-maxerr < val >"}}==
Only stop parsing if <val> errors occurred
{{fbdoc item="subsect" value="Platform specific"}}
=={{fbdoc item="keyword" value="CompilerOptarch|-arch < type >"}}==
Set target architecture (default: ##486##)
=={{fbdoc item="keyword" value="CompilerOpttarget|-target < platform >"}}==
Set the target platform for cross compilation
=={{fbdoc item="keyword" value="CompilerOptfpu|-fpu < type >"}}==
Set the floating point arithmetics unit (default: ##FPU##)
=={{fbdoc item="keyword" value="compileroptfpmode|-fpmode < type >"}}==
Select between fast and accurate floating-point operations (default: ##PRECISE##)
=={{fbdoc item="keyword" value="CompilerOpts|-s < name >"}}==
Set subsystem (##gui##, ##console##)
=={{fbdoc item="keyword" value="CompilerOptt|-t < value >"}}==
Set stack size in kbytes (default: 1M)
=={{fbdoc item="keyword" value="CompilerOptvec|-vec < level >"}}==
Set level of vector optimizations enabled by the compiler (default: ##0##)
<<>>{{fbdoc item="subsect" value="Miscellaneous"}}
=={{fbdoc item="keyword" value="CompilerOptcupp|-C"}}==
Do not delete the object file(s)
=={{fbdoc item="keyword" value="CompilerOptrupp|-R"}}==
Do not delete the asm file(s)
=={{fbdoc item="keyword" value="CompilerOptv|-v"}}==
Be verbose
=={{fbdoc item="keyword" value="CompilerOptversion|-version"}}==
Show compiler version (note: the compiler will display this info on the command line and quit without compiling or checking other parameters when this parameter is used)
=={{fbdoc item="keyword" value="CompilerOptWa|-Wa < opt >"}}==
Pass options to GAS (separated by commas)
=={{fbdoc item="keyword" value="CompilerOptWc|-Wc < opt >"}}==
Pass options to GCC (separated by commas)
=={{fbdoc item="keyword" value="CompilerOptprefix|-prefix < path >"}}==
Set the compiler prefix path
=={{fbdoc item="keyword" value="CompilerOptgen|-gen < backend >"}}==
Sets the compiler backend (default is 'gas').
=={{fbdoc item="keyword" value="CompilerOptz|-z < value >"}}==
Sets miscellaneous or experimental options.
=={{fbdoc item="keyword" value="CompilerOptpp|-pp"}}==
Emit the preprocessed input file only, do not compile
=={{fbdoc item="keyword" value="CompilerOptoptfile|@< file >"}}==
Read (additional) command-line options from the file
{{fbdoc item="section" value="Linking options"}}
{{fbdoc item="subsect" value="Object code"}}
=={{fbdoc item="keyword" value="CompilerOpta|-a < name >"}}==
Add an object file to linker's list
=={{fbdoc item="keyword" value="CompilerOptl|-l < name >"}}==
Add a library file to linker's list
=={{fbdoc item="keyword" value="CompilerOptx|-x < name >"}}==
Set executable/library path/name
=={{fbdoc item="keyword" value="CompilerOptp|-p < name >"}}==
Add a path to search for libraries
=={{fbdoc item="keyword" value="CompilerOptWl|-Wl < opt >"}}==
Pass options to LD (separated by commas)
{{fbdoc item="subsect" value="Runtime"}}
=={{fbdoc item="keyword" value="CompilerOptlib|-lib"}}==
Create a static library
=={{fbdoc item="keyword" value="CompilerOptdll|-dll"}}==
Create a DLL, including the import library. (Same as ##-dylib##)
=={{fbdoc item="keyword" value="CompilerOptdylib|-dylib"}}==
Create a DLL, including the import library
=={{fbdoc item="keyword" value="CompilerOptmt|-mt"}}==
Link with thread-safe runtime library
=={{fbdoc item="keyword" value="CompilerOptnodeflibs|-nodeflibs"}}==
Do not include the default libraries

{{fbdoc item="subsect" value="Miscellaneous"}}
=={{fbdoc item="keyword" value="CompilerOptexport|-export"}}==
Export symbols for dynamic linkage
=={{fbdoc item="keyword" value="CompilerOptmap|-map < name >"}}==
Save the linking map to file name


Revision [14964]

Edited on 2010-10-26 06:01:25 by DkLwikki [Updated/reordered command line options]
Deletions:
=={{fbdoc item="keyword" value="CompilerOptentry|-entry < name >"}}==


Revision [14756]

Edited on 2010-08-04 08:47:54 by DkLwikki [Added -Wc]
Additions:
=={{fbdoc item="keyword" value="CompilerOptWc|-Wc < opt >"}}==
Pass options to GCC (separated by commas)


Revision [14677]

Edited on 2010-06-19 05:17:33 by DkLwikki [Added -Wc]
Additions:
=={{fbdoc item="keyword" value="CompilerOptoptfile|@< file >"}}==
Deletions:
=={{fbdoc item="keyword" value="CompilerOptoptfile|@<file>"}}==


Revision [14676]

Edited on 2010-06-19 05:16:33 by DkLwikki [Added @<file>]
Additions:
=={{fbdoc item="keyword" value="CompilerOptoptfile|@<file>"}}==
Read (additional) command-line options from the file


Revision [14675]

Edited on 2010-06-19 05:01:51 by DkLwikki [Added -pp]
Additions:
=={{fbdoc item="keyword" value="CompilerOptpp|-pp"}}==
Emit the preprocessed input file only, do not compile


Revision [14660]

Edited on 2010-06-19 04:21:56 by DkLwikki [Reverted previous change.]
Additions:
{{fbdoc item="back" value="DocToc|Table of Contents"}}
Deletions:
{{fbdoc item="back" value="FBWiki|Main Page"}}


Revision [14635]

Edited on 2010-06-15 11:31:54 by DkLwikki ["Back to Main" instead of "Back to TOC"]
Additions:
{{fbdoc item="back" value="FBWiki|Main Page"}}
Deletions:
{{fbdoc item="back" value="DocToc|Table of Contents"}}


Revision [14210]

Edited on 2009-08-15 11:21:22 by CountingPine [name case fixup]
Additions:
=={{fbdoc item="keyword" value="compileroptfpmode|-fpmode < type >"}}==
Deletions:
=={{fbdoc item="keyword" value="CompilerOptfpmode|-fpmode < type >"}}==


Revision [14117]

Edited on 2009-02-14 05:01:29 by CountingPine [Link to -vec]
Additions:
=={{fbdoc item="keyword" value="CompilerOptvec|-vec < level >"}}==
Set level of vector optimizations enabled by the compiler (default: ##0##)


Revision [14113]

Edited on 2009-02-04 02:06:37 by CountingPine [Link to -fpmode]
Additions:
Set the floating point arithmetics unit (default: ##FPU##)
=={{fbdoc item="keyword" value="CompilerOptfpmode|-fpmode < type >"}}==
Select between fast and accurate floating-point operations (default: ##PRECISE##)
<<>>{{fbdoc item="subsect" value="Miscellaneous"}}
{{fbdoc item="section" value="Linking options"}}
Deletions:
Set the floating point arithmetics unit (default: FPU)
<<>>{{fbdoc item="section" value="Linking options"}}


Revision [14065]

Edited on 2008-12-28 01:09:51 by KristopherWindsor [-version description]
Additions:
Show compiler version (note: the compiler will display this info on the command line and quit without compiling or checking other parameters when this parameter is used)
Deletions:
Show compiler version


Revision [13768]

Edited on 2008-10-07 11:14:01 by CountingPine [Add -forcelang]
Additions:
The official ""FreeBASIC"" distribution comes with **fbc**, ""FreeBASIC""'s flagship compiler. **fbc** is a command line compiler, and can be launched from the console - from DOS, the Windows command prompt or a Linux shell. Running **fbc** from the console without any arguments displays a list of available options, or command-line switches, that can be used to adjust the behavior of the compiler.
=={{fbdoc item="keyword" value="CompilerOptforcelang|-forcelang < name >"}}==
Select language compatibility: ##fb##, ##fblite##, ##qb##, ##deprecated## (overides statements in code)
=={{fbdoc item="keyword" value="CompilerOptfpu|-fpu < type >"}}==
Deletions:
The official FreeBASIC distribution comes with **fbc**, FreeBASIC's flagship compiler. **fbc** is a command line compiler, and can be launched from the console - from DOS, the Windows command prompt or a Linux shell. Running **fbc** from the console without any arguments displays a list of available options, or command-line switches, that can be used to adjust the behavior of the compiler.
{{fbdoc item="keyword" value="CompilerOptfpu|-fpu < type >"}}


Revision [13618]

Edited on 2008-07-22 10:26:29 by JeffMarshall [added gen and z options]
Additions:
=={{fbdoc item="keyword" value="CompilerOptgen|-gen < backend >"}}==
Sets the compiler backend (default is 'gas').
=={{fbdoc item="keyword" value="CompilerOptz|-z < value >"}}==
Sets miscellaneous or experimental options.


Revision [13427]

The oldest known version of this page was created on 2008-05-31 21:28:07 by JeffMarshall [added gen and z options]
Valid XHTML :: Valid CSS: :: Powered by WikkaWiki



sf.net phatcode