cc.1

来自「<B>Digital的Unix操作系统VAX 4.2源码</B>」· 1 代码 · 共 751 行 · 第 1/2 页

1
751
字号
.TP 15.B \-volatileCauses all variables to be treated as.I volatile..TP 15.B \-varargsPrints warnings for lines that may require the.I varargs.hmacros..TP 15.B \-fCauses the compiler not to promote expressions of type.I floatto type.I double..TP 15.B \-floatSame as the .B \-f option..TP 15\fB\-fill \fInumber\fRSet the fill pattern for ``holes'' within an output section.  The \fInumber\fR argument is a four byte hex constant..NTThe .B \-EBand.B \-ELoptions are needed only when compiling for RISC machines from vendors other than Digital..NEThe default target byte ordering matches the machine where the compiler is running.  The options.B \-EBand.B \-ELspecify the target byte ordering (big-endian and little-endian,respectively).The compiler also defines a C preprocessor macro for thetarget byte ordering.  These C preprocessor macros are.B MIPSEBand.B MIPSELfor big-endian and little-endian byte ordering respectively..PPIf the specified target byte ordering does not match the machine where thecompiler is running, then the runtime startups and libraries come from.B /usr/libebfor big-endian runtimes on a little-endian machine and from.B /usr/libelfor little-endian runtimes on a big-endian machine..TP 15.B \-EBProduce object files targeted for big-endian byte ordering.  The C preprocessormacro.B MIPSEBis defined by the compiler..TP 15.B \-ELProduce object files targeted for little-endian byte ordering.  TheC preprocessor macro.B MIPSELis defined by the compiler..PPThe following options primarily aid compilerdevelopment and are not generally used:.TP 15.BI \-H cHalt compiling after the pass specified by the character.IR c ,producing an intermediate file for the next pass.  The.I ccan be.B [ fjusmoca ].It selects the compiler pass in the same way as the.B \-toption.If this option is used, the symbol table file produced and used by the passesis the last component of the source file with the suffix changed to .T.It is not removed..TP 15.B \-KBuild and use intermediate file names with the last component of thesource file's  name replacing its suffix with the conventional suffix for thetype of file (for example, .B file for binary.I ucode,produced by the front end).  These intermediate files are never removedeven when a pass encounters a fatal error.When ucode linking is performed and the.B \-Koption is specified, the base name of the files created after the ucode link isu.out by default.  If.BI \-ko " output"is specified, the base name of the object file is .I outputwithout the suffix.  Suffixes are appended to.I outputif it does not have a suffix..TP 15.B \-#Converts binary.I ucodefiles (.B) or optimized binary ucode files (.O) to symbolic.I ucode(a .U file).If a symbolic ucode file is to be produced by converting the binary.I ucodefrom the C compiler front end then the front end option.B \-Xu is used..TP 15.BI \-W c[c...],arg1[,arg2...]Pass the argument[s].I argito the compiler pass[es].I c[c..].The.I c'sare one of.B [ pfjusmocablyz ].The c's selects the compiler pass in the same way as the.B \-toption..PPThe options.BR \-t [ hpfjusmocablyzrnt ],.BI \-h path,and.BI \-B stringselect a name to use for a particular pass, startup routine, or standard library.These arguments are processed from left to right so their order is significant.When the.B \-Boption is encountered, the selection of names takes place using the last.B \-hand.B \-toptions.  Therefore, the.B \-Boption is always required when using.B \-hor.BR \-t .Sets of these options can be used to select any combination of names..PPThe.B \-EBor.B \-ELoptions and the.B \-p[01]options must precede all.B \-Boptions because they can affect the location of runtime libraries and whichruntime libraries are used..TP 15.BR \-t [ hpfjusmocablyzrnt ]Select the names.  The names must be selected from the options in thefollowing table:.br.ta \w'btou, utob\ \ 'u.SM "Name      Character".brinclude	h  (see note below).brcpp	p.brccom	f.brujoin	j.bruld	u.brusplit	s.brumerge	m.bruopt	o.brugen	c.bras0	a.bras1	b.brld	l.brftoc	y.brcord	z.br[m]crt0.o	r.brlibprof1.a	n.brbtou, utob	t.br.sp +.5If the character h is in the.B \-targument then a directory is added to the list of directories to be used in searching for #include files.  This directory name has the form.SM COMP_TARGET_ROOT\fR/usr/include\fIstring\fR .This directory is to contain the include files for the.I stringrelease of the compiler.  The standard directory is still searched..TP 15.BI \-h \*SpathUse.I pathrather than the directory where the name is normally found..TP 15.BI \-B \*SstringAppend.I stringto all names specified by the.B \-toption.  If the.B \-toption has not been processed before the.B \-B,the.B \-toption is assumed to be the following: hpfjusmocablyzrnt.  This list designates all names.If the.B \-targument has not been processed before the.B \-Bargument,.BI \-B stringis passed to the loader to use with its.BI \-l xarguments..PPInvoking the compiler with a name of the form.BI cc stringhas the same effect as using a.BI \-B stringoption on the command line..PPIf the environment variable.SM COMP_HOST_ROOTis set, the value is used as the rootdirectory for all pass names rather than the default slash (/).If the environment variable.SM COMP_TARGET_ROOTis set, the value is used as the rootdirectory for all include and library names rather than the defaultslash (/).This affects the standard directory for #include files, /usr/include,and the standard library, /usr/lib/libc.a.  If this is set then the onlydirectory that is searched for libraries, using the.BI \-l xoption, is.SM COMP_TARGET_ROOT\fR/usr/lib ..PPIf the environment variable.SM TMPDIRis set, the value is used as the directory to place any temporary filesrather than the default.B /tmp/ ..PPIf the environment variable.SM RLS_ID_OBJECTis set, the value is used as the name of an object to link in if a link takesplace.  This is used to add release identification information to objects.It is always the last object specified to the loader.  .PPOther arguments are assumed to be either loader options or C\-compatibleobject files, typically produced by an earlier.PN ccrun, or perhaps libraries of C\-compatibleroutines.  These files, together with the results of anycompilations specified, are loaded in the ordergiven, producing an executable program with the default name.B a.out..SH OptionsThe ULTRIX C compiler provides the following default symbolsfor your use.  These symbols are useful in ifdef statementsto isolate code for one of the particular cases.  Thus, thesesymbols can be useful for ensuring portable code..TP 15unixAny UNIX system.TPbsd4_2Berkeley UNIX Version 4.2.TPultrixULTRIX only.TPmipsAny RISC architecture.TPMIPSELLittle endian variant of MIPS architecture.TPhost_mipsNative compilation environment (as opposed to cross-compiler).SH RestrictionsThe standard library, /usr/lib/libc.a, is loaded by using the \-lc loaderoption and not a full path name. The wrong library may be loaded ifthere are files with the name.RI libc.a stringin the directories specified with the .B \-Lloader option or in the default directories searched by the loader..PPThe handling of include directories and libc.a is confusing..SH Files.ta \w'/usr/lib/libprof1.a\ \ 'ufile.c			input file.brfile.o			object file.bra.out			loaded output.br/tmp/ctm?		temporary.br/usr/lib/cpp	C macro preprocessor.br/usr/lib/ccom	C front end.br/usr/lib/ujoin	binary ucode and symbol table joiner.br/usr/bin/uld	ucode loader.br/usr/lib/usplit	binary ucode and symbol table splitter.br/usr/lib/umerge	procedure intergrator.br/usr/lib/uopt	optional global ucode optimizer.br/usr/lib/ugen	code generator.br/usr/lib/as0	symbolic to binary assembly language translator.br/usr/lib/as1	binary assembly language assembler and reorganizer.br/usr/lib/crt0.o	runtime startup.br/usr/lib/mcrt0.o	startup for profiling.br/usr/lib/libc.a	standard library, see intro(3).br/usr/lib/libprof1.a	level 1 profiling library.br/usr/include	standard directory for #include files.br/usr/bin/ld	MIPS loader.br/usr/lib/ftoc	interface between .MS prof 1and cord.br/usr/lib/cord	procedure-rearranger.br/usr/bin/btou	binary to symbolic ucode translator.br/usr/bin/utob	symbolic to binary ucode translator.brmon.out		file produced for analysis by.MS prof 1.PPRuntime startups and libraries for the opposite byte sex of machine thecompiler is running on have the same names but are located in differentdirectories.  For big-endian runtimes on a little-endian machine thedirectory is /usr/libeb and for little-endian runtimes ona big-endian machine the directory is /usr/libel..SH See Alsodbx(1), ld(1), pixie(1), prof(1), what(1), monitor(3)

⌨️ 快捷键说明

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