fcc.1 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160
  1. .TH FCC 1
  2. .SH NAME
  3. fcc \- fast CC-compatible C compiler
  4. .SH SYNOPSIS
  5. .B fcc
  6. [
  7. .B \-c
  8. ]
  9. [
  10. .B \-O
  11. ]
  12. [
  13. .B \-v
  14. ]
  15. [
  16. .B \-vn
  17. ]
  18. [ \fB\-D\fIname\fR ]
  19. [ \fB\-D\fIname\fB=\fIdef\fR ]
  20. [
  21. .BI \-I pathname
  22. ]
  23. [
  24. .B \-w
  25. ]
  26. [
  27. .B \-o
  28. .I outfile
  29. ]
  30. [
  31. .B \-R
  32. ]
  33. [
  34. .BI \-U name
  35. ]
  36. [
  37. .BI -M compiler
  38. ]
  39. .I sourcefile ...
  40. .SH DESCRIPTION
  41. .LP
  42. .I Fcc
  43. is a fast
  44. .B C
  45. compiler. It translates
  46. .B C
  47. programs
  48. into cc(1)-compatible relocatable object modules, and does so in one pass.
  49. Then, if the \fB\-c\fP flag is not given,
  50. .I fcc
  51. offers the object modules to a link-editor,
  52. to create an executable binary.
  53. .LP
  54. .I Fcc
  55. accepts several types of filename arguments. Files with
  56. names ending in
  57. .B .c
  58. are taken to be
  59. .B C
  60. source programs.
  61. They are compiled, and the resulting object module is placed in the current
  62. directory.
  63. The object module is named after its source file, the suffix
  64. .B .o
  65. replacing
  66. .BR .c
  67. in the name of the object.
  68. .LP
  69. Other arguments refer to loader options,
  70. object modules, or object libraries.
  71. Unless the
  72. .B \-c
  73. flag is given, these modules and libraries, together with the results of any
  74. specified compilations, are passed (in the order given) to the
  75. link-editor to produce
  76. an output file named
  77. .IR a.out .
  78. You can specify a name for the executable by using the
  79. .B \-o
  80. option.
  81. .LP
  82. If a single
  83. .B C
  84. program is compiled and loaded all at once, the object module
  85. file is deleted.
  86. .SH OPTIONS
  87. .LP
  88. The \fB\-l\fIlib\fR, \fB\-d\fP, \fB\-n\fP, \fB\-N\fP,
  89. \fB\-r\fP, \fB\-s\fP, \fB\-S\fP, \fB\-i\fP, and \fB\-u\fP options are
  90. passed to the link-editor program.
  91. The \fB\-u\fP option takes an extra argument.
  92. .IP \fB\-c\fP
  93. .br
  94. Suppress the loading phase of the compilation, and force an object module to
  95. be produced, even if only one program is compiled.
  96. A single object module can be named explicitly using the
  97. .B \-o
  98. option.
  99. .IP \fB\-D\fIname\fR\fB=\fIdef\fR
  100. Define a symbol
  101. .I name
  102. to the
  103. preprocessor, as if by "#define".
  104. .IP \fB\-D\fIname\fR
  105. .br
  106. same as \fB\-D\fIname\fB=1\fR.
  107. .IP \fB\-I\fIpathname\fR
  108. .br
  109. Add
  110. .I pathname
  111. to the list of directories in which to search for
  112. .B #include
  113. files with filenames not beginning with slash.
  114. The compiler first searches for
  115. .B #include
  116. files in the directory containing
  117. .I sourcefile,
  118. then in directories in
  119. .B \-I
  120. options, and finally, in
  121. .I /usr/include.
  122. .IP "\fB\-o \fIoutput\fR"
  123. Name the final output file
  124. .I output.
  125. .IP \fB\-O\fP
  126. .br
  127. Use a version of the compiler that is just a bit slower, but produces
  128. better code.
  129. .IP \fB\-U\fIname\fR
  130. .br
  131. Remove any initial definition of
  132. .I name.
  133. .IP \fB\-v\fP
  134. .br
  135. Verbose. Print the commands as they are executed.
  136. .IP \fB\-vn\fP
  137. .br
  138. Verbose, no execute. Only print the commands, do not execute them.
  139. .IP \fB\-w\fP
  140. suppress warning messages.
  141. .IP \fB\-R\fP
  142. .br
  143. test for more compatibility with Kernighan & Ritchie C [1].
  144. .IP \fB\-M\fIcompiler\fR
  145. .br
  146. use \fIcompiler\fR as C-2 compiler instead of the default.
  147. .LP
  148. Object modules produced by cc(1) and
  149. .I fcc
  150. can be freely mixed, as long as the link-editor is called through
  151. .I fcc.
  152. .SH "SEE ALSO"
  153. .IP [1]
  154. B.W. Kernighan, D. Ritchie, "\fIThe C programming Language\fP", Prentice-Hall Inc., 1978
  155. .IP [2]
  156. E.H. Baalbergen, "\fIThe ACK CEM compiler\fP".
  157. .IP [3]
  158. cc(1) unix manual page.
  159. .SH DIAGNOSTICS
  160. Diagnostics are intended to be self-explanatory.