⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gcc.html

📁 vxworks相关论文
💻 HTML
📖 第 1 页 / 共 5 页
字号:
</P><PRE>League for Programming Freedom1 Kendall Square #143P.O. Box 9171Cambridge, MA 02139</PRE><P>You can also send electronic mail to <CODE>lpf@uunet.uu.net</CODE>.</P><P>In addition to joining the League, here are some suggestions from theLeague for other things you can do to protect your freedom to writeprograms:</P><UL><LI>Tell your friends and colleagues about this issue and how it threatensto ruin the computer industry.<LI>Mention that you are a League member in your <TT>`.signature'</TT>, andmention the League's email address for inquiries.<LI>Ask the companies you consider working for or working with to makestatements against software monopolies, and give preference to thosethat do.<LI>When employers ask you to sign contracts giving them copyright on yourwork, insist on a clause saying they will not claim the copyright coversimitating the interface.<LI>When employers ask you to sign contracts giving them patent rights,insist on clauses saying they can use these rights only defensively.Don't rely on "company policy," since that can change at any time;don't rely on an individual executive's private word, since that personmay be replaced.  Get a commitment just as binding as the commitmentthey get from you.<LI>Write to Congress to explain the importance of these issues.<PRE>House Subcommittee on Intellectual Property2137 Rayburn BldgWashington, DC 20515Senate Subcommittee on Patents, Trademarks and CopyrightsUnited States SenateWashington, DC 20510</PRE>(These committees have received lots of mail already; let's give themeven more.)</UL><P>Democracy means nothing if you don't use it.  Stand up and be counted!</P><H1><A NAME="SEC7" HREF="gcc_toc.html#TOC7">Compile C, C++, or Objective C</A></H1><P><A NAME="IDX1"></A>The C, C++, and Objective C versions of the compiler are integrated; theGNU C compiler can compile programs written in C, C++, or Objective C.</P><P><A NAME="IDX2"></A>"GCC" is a common shorthand term for the GNU C compiler.  This is boththe most general name for the compiler, and the name used when theemphasis is on compiling C programs.</P><P><A NAME="IDX3"></A><A NAME="IDX4"></A>When referring to C++ compilation, it is usual to call the compiler"G++".  Since there is only one compiler, it is also accurate to callit "GCC" no matter what the language context; however, the term"G++" is more useful when the emphasis is on compiling C++ programs.</P><P>We use the name "GNU CC" to refer to the compilation system as awhole, and more specifically to the language-independent part of thecompiler.  For example, we refer to the optimization options asaffecting the behavior of "GNU CC" or sometimes just "the compiler".</P><P>Front ends for other languages, such as Ada 9X, Fortran, Modula-3, andPascal, are under development.  These front-ends, like that for C++, arebuilt in subdirectories of GNU CC and link to it.  The result is anintegrated compiler that can compile programs written in C, C++,Objective C, or any of the languages for which you have installed frontends.</P><P>In this manual, we only discuss the options for the C, Objective-C, andC++ compilers and those of the GNU CC core.  Consult the documentationof the other front ends for the options to use when compiling programswritten in other languages.</P><P><A NAME="IDX5"></A><A NAME="IDX6"></A><A NAME="IDX7"></A>G++ is a <EM>compiler</EM>, not merely a preprocessor.  G++ builds objectcode directly from your C++ program source.  There is no intermediate Cversion of the program.  (By contrast, for example, some otherimplementations use a program that generates a C program from your C++source.)  Avoiding an intermediate C representation of the program meansthat you get better object code, and better debugging information.  TheGNU debugger, GDB, works with this information in the object code togive you comprehensive C++ source-level editing capabilities(see section `C and C++' in <CITE>Debugging with GDB</CITE>).</P><H1><A NAME="SEC8" HREF="gcc_toc.html#TOC8">GNU CC Command Options</A></H1><P><A NAME="IDX8"></A><A NAME="IDX9"></A><A NAME="IDX10"></A></P><P>When you invoke GNU CC, it normally does preprocessing, compilation,assembly and linking.  The "overall options" allow you to stop thisprocess at an intermediate stage.  For example, the <SAMP>`-c'</SAMP> optionsays not to run the linker.  Then the output consists of object filesoutput by the assembler.</P><P>Other options are passed on to one stage of processing.  Some optionscontrol the preprocessor and others the compiler itself.  Yet otheroptions control the assembler and linker; most of these are notdocumented here, since you rarely need to use any of them.</P><P><A NAME="IDX11"></A>Most of the command line options that you can use with GNU CC are usefulfor C programs; when an option is only useful with another language(usually C++), the explanation says so explicitly.  If the descriptionfor a particular option does not mention a source language, you can usethat option with all supported languages.</P><P><A NAME="IDX12"></A>See section <A HREF="gcc.html#SEC11">Compiling C++ Programs</A>, for a summary of specialoptions for compiling C++ programs.</P><P><A NAME="IDX13"></A><A NAME="IDX14"></A>The <CODE>gcc</CODE> program accepts options and file names as operands.  Manyoptions have multiletter names; therefore multiple single-letter optionsmay <EM>not</EM> be grouped: <SAMP>`-dr'</SAMP> is very different from <SAMP>`-d-r'</SAMP>.</P><P><A NAME="IDX15"></A><A NAME="IDX16"></A>You can mix options and other arguments.  For the most part, the orderyou use doesn't matter.  Order does matter when you use several optionsof the same kind; for example, if you specify <SAMP>`-L'</SAMP> more than once,the directories are searched in the order specified.</P><P>Many options have long names starting with <SAMP>`-f'</SAMP> or with<SAMP>`-W'</SAMP>---for example, <SAMP>`-fforce-mem'</SAMP>,<SAMP>`-fstrength-reduce'</SAMP>, <SAMP>`-Wformat'</SAMP> and so on.  Most ofthese have both positive and negative forms; the negative form of<SAMP>`-ffoo'</SAMP> would be <SAMP>`-fno-foo'</SAMP>.  This manual documentsonly one of these two forms, whichever one is not the default.</P><H2><A NAME="SEC9" HREF="gcc_toc.html#TOC9">Option Summary</A></H2><P>Here is a summary of all the options, grouped by type.  Explanations arein the following sections.</P><DL COMPACT><DT><EM>Overall Options</EM><DD>See section <A HREF="gcc.html#SEC10">Options Controlling the Kind of Output</A>.<PRE>-c  -S  -E  -o <VAR>file</VAR>  -pipe  -v  -x <VAR>language</VAR> </PRE><DT><EM>C Language Options</EM><DD>See section <A HREF="gcc.html#SEC12">Options Controlling C Dialect</A>.<PRE>-ansi  -fallow-single-precision  -fcond-mismatch-fno-asm  -fno-builtin  -fsigned-bitfields-fsigned-char  -funsigned-bitfields  -funsigned-char-fwritable-strings  -traditional  -traditional-cpp-trigraphs</PRE><DT><EM>C++ Language Options</EM><DD>See section <A HREF="gcc.html#SEC13">Options Controlling C++ Dialect</A>.<PRE>-fall-virtual  -fdollars-in-identifiers-felide-constructors  -fenum-int-equiv-fexternal-templates  -fhandle-signatures-fmemoize-lookups  -fno-default-inline-fno-gnu-keywords  -fnonnull-objects-foperator-names  -fstrict-prototype-fthis-is-variable  -nostdinc++-traditional  +e<VAR>n</VAR>-fenum-int-equiv -fexternal-templates  -ffor-scope -fno-for-scope-fhandle-signatures -fmemoize-lookups  -fno-default-inline -fno-gnu-keywords-fnonnull-objects  -foperator-names  -fstrict-prototype-fthis-is-variable -nostdinc++ -traditional  +e<VAR>n</VAR></PRE><DT><EM>Warning Options</EM><DD>See section <A HREF="gcc.html#SEC14">Options to Request or Suppress Warnings</A>.<PRE>-fsyntax-only  -pedantic  -pedantic-errors-w  -W  -Wall  -Waggregate-return  -Wbad-function-cast-Wcast-align -Wcast-qual  -Wchar-subscript  -Wcomment-Wconversion -Wenum-clash  -Werror  -Wformat-Wid-clash-<VAR>len</VAR>  -Wimplicit  -Wimport  -Winline-Wlarger-than-<VAR>len</VAR>  -Wmissing-declarations-Wmissing-prototypes  -Wnested-externs-Wno-import  -Woverloaded-virtual -Wparentheses-Wpointer-arith  -Wredundant-decls -Wreorder -Wreturn-type  -Wshadow  -Wstrict-prototypes-Wswitch  -Wsynth  -Wtemplate-debugging  -Wtraditional-Wtrigraphs -Wuninitialized  -Wunused  -Wwrite-strings</PRE><DT><EM>Debugging Options</EM><DD>See section <A HREF="gcc.html#SEC15">Options for Debugging Your Program or GNU CC</A>.<PRE>-a  -ax  -d<VAR>letters</VAR>  -fpretend-float-g  -g<VAR>level</VAR> -gcoff  -gdwarf  -gdwarf+-ggdb  -gstabs  -gstabs+  -gxcoff  -gxcoff+-p  -pg  -print-file-name=<VAR>library</VAR>  -print-libgcc-file-name  -print-prog-name=<VAR>program</VAR>-save-temps-print-prog-name=<VAR>program</VAR>  -print-search-dirs  -save-temps</PRE><DT><EM>Optimization Options</EM><DD>See section <A HREF="gcc.html#SEC16">Options That Control Optimization</A>.<PRE>-fcaller-saves  -fcombine-statics -fcse-follow-jumps  -fcse-skip-blocks-fdelayed-branch   -fexpensive-optimizations  -ffast-math  -ffloat-store  -fforce-addr  -fforce-mem-ffunction-sections -finline-functions  -fkeep-inline-functions  -fno-default-inline  -fno-defer-pop  -fno-function-cse-fno-inline  -fno-peephole  -fomit-frame-pointer  -frerun-cse-after-loop  -fschedule-insns  -fschedule-insns2  -fshorten-lifetimes -fstrength-reduce  -fthread-jumps -funroll-all-loops  -funroll-loops-O  -O0  -O1  -O2  -O3</PRE><DT><EM>Preprocessor Options</EM><DD>See section <A HREF="gcc.html#SEC17">Options Controlling the Preprocessor</A>.<PRE>-A<VAR>question</VAR>(<VAR>answer</VAR>)  -C  -dD  -dM  -dN-D<VAR>macro</VAR>[=<VAR>defn</VAR>]  -E  -H-idirafter <VAR>dir</VAR>-include <VAR>file</VAR>  -imacros <VAR>file</VAR>-iprefix <VAR>file</VAR>  -iwithprefix <VAR>dir</VAR>-iwithprefixbefore <VAR>dir</VAR>  -isystem <VAR>dir</VAR>-M  -MD  -MM  -MMD  -MG  -nostdinc  -P  -trigraphs-undef  -U<VAR>macro</VAR>  -Wp,<VAR>option</VAR></PRE><DT><EM>Assembler Option</EM><DD>See section <A HREF="gcc.html#SEC18">Passing Options to the Assembler</A>.<PRE>-Wa,<VAR>option</VAR></PRE><DT><EM>Linker Options</EM><DD>See section <A HREF="gcc.html#SEC19">Options for Linking</A>.<PRE><VAR>object-file-name</VAR>  -l<VAR>library</VAR>-nostartfiles  -nodefaultlibs  -nostdlib  -s  -static  -shared  -symbolic  -Wl,<VAR>option</VAR>  -Xlinker <VAR>option</VAR>-u <VAR>symbol</VAR></PRE><DT><EM>Directory Options</EM><DD>See section <A HREF="gcc.html#SEC20">Options for Directory Search</A>.<PRE>-B<VAR>prefix</VAR>  -I<VAR>dir</VAR>  -I-  -L<VAR>dir</VAR></PRE><DT><EM>Target Options</EM><DD>See section <A HREF="gcc.html#SEC21">Specifying Target Machine and Compiler Version</A>.<PRE>-b <VAR>machine</VAR>  -V <VAR>version</VAR></PRE><DT><EM>Machine Dependent Options</EM><DD>See section <A HREF="gcc.html#SEC22">Hardware Models and Configurations</A>.<PRE><EM>M680x0 Options</EM>-m68000  -mc68000  -m68020  -mc68020

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -