abicc man page on IRIX

Man page or keyword search:  
man Server   31559 pages
apropos Keyword Search (all sections)
Output format
IRIX logo
[printable version]



ABICC(1)							      ABICC(1)

NAME
     abicc - ABI C compiler

SYNOPSIS
     abicc [ option ] ...  file ...

DESCRIPTION
     abicc is a wrapper shell script for cc for compiling MIPS ABI
     applications.  It translates a common subset of the SVR4 SGS (Software
     Generation System) flags and arguments to those of the native IDO (IRIS
     Development Option).  By the use of this wrapper, applications which link
     "on-site" on a target platform are isolated from having to know the
     details of invoking that platform's compilation system.

     abicc also serves to hide the details of constructing an ABI application
     on IRIX.  The details of exactly how the native cc constructs an ABI
     application are not guaranteed to remain unchanged, so abicc should be
     used to compile all ABI-compliant programs to insure portability.

OPTIONS
     The following options are recognized by abicc; options which are not
     applicable are (generally) silently ignored.  Further details available
     in the UNIX System V Release 4 Programmer's Reference Manual.

     -A	 name[(tokens)]
	   controls #assert mechanisms

     -B static
	   look only for static archives during link phase

     -B dynamic
	   look for DSOs first, then static archives. during link phase

     The -B static and -B dynamic options serve as toggles and can be
     specified multiple times on a command line.

     -B symbolic
	  when building a shared object, bind references to global symbols to
	  their definitions within the object

     -B symbolic=name,...
	  when creating a DSO, bind references to the named symbols to their
	  definitions within the object.  Not supported at at present.

     -B symbolic_file=filename
	  when creating a DSO, the file filename contains a list of symbols
	  that should be bound to their definitions within the object if there
	  is a definition in the object.  Not supported at present.

     -B export
	  when creating a DSO, indicates that symbols from the next object,
	  archive, or DSO are exported from the DSO being created.  This is

									Page 1

ABICC(1)							      ABICC(1)

	  the default for an object but not for an archive or DSO.

     -B export=name,...
	  when creating a DSO, marks the symbols given by the list of names as
	  exported.  If any symbols are exported by this mechanism then all
	  unspecified symbols will be automatically hidden.  filename contains
	  a list of symbols that should be exported.  Any symbols not
	  specifically exported will be automatically hidden.

     -B exports_file=filename
	  when creating a DSO, the file given by filename contains a list of
	  symbols that should be exported.  Any symbols not specifically
	  exported will be automatically hidden.

     -B hide
	  when creating a DSO, indicates that symbols from the next object,
	  archive, or DSO are hidden in the DSO being created.	This is the
	  default for an archive or DSO but not for an object.

     -B hide=name,...
	  when creating a DSO, marks the symbols given by the list of names as
	  hidden.  Ignored if any symbols are exported by the
	  -B export=name,...  or -B exports_file=filename options.

     -B hides_file=filename
	  when creating a DSO, the file given by filename contains a list of
	  symbols that should be hidden.  Ignored if any symbols are exported
	  by the -B export=name,...  or -B exports_file=filename options.

     -B nolibraryreplacement
	  Turns on a flag in the dynamic section so that rld does not allow
	  execution time or runtime changing of the path (except for super
	  user) to find the shared objects. Typically used for security
	  purposes on system utilities.

     -B rpath=PATH
	  PATH is a directory.	Specifies the rpath pathname when linking
	  -shared (an IRIX cc option) or when using the -G option.  The
	  dynamic linker will search the named directory first.

     -C	  suppresses comment removal when combined with -P or -E options. Not
	  meaningful otherwise.

     -b	  This SVR4 option is silently ignored.

     -c	  suppresses linking phase.

     -D name[=tokens]
	  defines name to the preprocessor, as if by a C-language #define
	  directive. If an =value is not given, a value of 1 is used.

									Page 2

ABICC(1)							      ABICC(1)

     -d y specifies dynamic linking.  This is the default.

     -d n specifies static linking.  Statically linked applications are not
	  MIPS ABI conforming.

     -E	  preprocess only (no compilation or linking).

     -f	  (obsolete, ignored)

     -G	  direct linker to produce shared object.  When using the -G option,
	  one usually also specifies the outfile file name using, -o file.so
	  and  the "soname" using, -Wl,-soname,file.so

     -g	  generate symbolic debug information.

     -H	  prints include file names as they are processed.  Suppresses
	  compilation (the output is much like	the -E option).

     -I dir
	  changes the algorithm for searching for headers whose names are not
	  absolute pathnames to look in the directory named by directory
	  before looking in the usual places.  Directories named in -I options
	  will be searched in the order specified.

     -J sfm
	  not supported, silently ignored

     -K PIC
	  generate Position Independent Code.  This is implied on the
	  Reference Platform.

     -K uchar
	  The compiler wil treat the char data type as unsigned.  This is the
	  default, as specified in the MIPS Processor ABI Supplement .

     -K schar
	  The compiler wil treat the char data type as signed.

     -K 32
	  generate a 32-bit object. This is the default.  Defaults to -K mips1
	  .

     -K 64
	  generate a 64bit object.  Defaults to -K mips3 .

     -K mips1
	  generate code using the MIPS I instruction set of the R2000/R3000
	  RISC architecture.  Defaults to -K 32 .

     -K mips2
	  generate code using the MIPS II instruction set (MIPS 1 + R4000
	  specific extensions). Defaults to -K 32 .

									Page 3

ABICC(1)							      ABICC(1)

     -K mips3
	  generate code using the MIPS III (R4000) instruction set.  Defaults
	  to -K 64 .

     -K mips4
	  generate code using the MIPS IV (R10000,R5000,R8000) instruction
	  set.	Defaults to -K 64 .

     -K fpe
	  not supported, silently ignored

     -K mau
	  not supported, silently ignored

     -K sd
	  not supported, silently ignored

     -K sz
	  not supported, silently ignored

     -K minabi
	  not necessary; abicc will by definition restrict references to ABI
	  references.

     -K xgot
	  generate code for the extended GOT model.  This model is not
	  recommended.	Many archives are not available in xgot form.

     -X readwrite_const
	  const data is placed in writable memory.

     -X readonly_const
	  const data may be placed in readonly memory (this is the default).
	  ANSI C says that if an application attempts to write into const data
	  the behavior is undefined.

     -X xpg
	  directs the compiler to set the global variable __xpg4 to 1; this
	  indicates that libraries should provide behavior compatible with the
	  X/Open Single UNIX(TM) Specification rather than the default
	  traditional behavior where there is a conflict.

     -L	 dir
	  controls library search path at linking phase Passed through to ld.

     -l	 name
	  search specified library

     -O	  do compilation phase optimization.

									Page 4

ABICC(1)							      ABICC(1)

     -o	 pathname
	  names output file

     -P	  perform only preprocessing on the named files , leaving the result
	  on corresponding files suffixed .i.

     -p	  is no longer supported.  For profiling see speedshop(1). Programs
	  with -p profiling generated in them are not ABI conformant:
	  profiling should only be done on a development platform.

     -Q n suppresses compiler identification information in the output
	  file(s).  Ignored on IRIX.

     -Q y generates compiler identification information in the output file(s).
	  Ignored on IRIX.

     -q	 c
	  controls generation of profiling code; c can be l or p.  Ignored on
	  IRIX.

     -S	  suppress assembly and linking (leaves assembler file).

     -U	 name
	  causes specified name to be undefined, as if by a C-language #undef
	  directive.  -U takes precedence over -D , so if both are present for
	  a name on the command line, name will not be defined.

     -v	  verbose mode.

     -V	  prints compiler version information.	Ignored on IRIX.

     -Wl,arg[,arg2...]
	  passes options directly to the linker. No un-quoted spaces are
	  allowed anywhere in this option.

     -X a ANSI compilation mode (default).  Defines __STDC__ to be 1.

     -X c ANSI conformance mode.  Defines __STDC__ to be 1.

     -X t transition mode.  Does not define __STDC__.

     If no -X option is specified, the default will be -X a (actually, the
     IRIX -xansi mode with ABI additions, see NOTE below).  An ABI application
     can not be produced with the -X t mode, as the ABI requires ANSI C.

     -Y	  not supported, generates a warning message

NOTES
     The OPTIONS section above indicates a space character between options and
     option-arguments.	This is in accordance with X/Open recommendations for
     portable applications.  abicc also supports placing its option-argument
     in the same string with no space.	If the option-argument is optional, no

									Page 5

ABICC(1)							      ABICC(1)

     space is allowed and this is reflected in the OPTIONS section.

     The default mode for abicc closely matches the -xansi mode documented in
     the cc(1) man page. In addition to the defined symbols listed there,
     _ABI_SOURCE is defined, the IRIX cc -G 0 option is selected, and
     /usr/include/abi is inserted at the front of the standard include path.
     Only /usr/lib/abi is searched for libraries if -K 32.  Only
     /usr/lib64/abi is searched for libraries if -K 64.

     -K 32 may only be combined with -K mips1 or -K mips2 . -K 64 may only be
     combined with -K mips3 or -K mips4 .

FILES
     /usr/lib/abi    ABI libraries and configuration files
     /usr/lib/mips2/abi	   ABI libraries
     /usr/lib64/abi    ABI libraries
     /usr/lib64/mips3/abi    ABI libraries
     /usr/lib64/mips4/abi    ABI libraries
     /usr/include/abi	     special ABI include files
     /usr/lib/abi/setup	     abicc setup file
     /usr/lib/abi/sgicc.cfg  IRIX abicc config file

SEE ALSO
     abild(1), check_abi_compliance(1), check_abi_interface(1),
     check_for_syscalls(1)
     MIPS Processor ABI Conformance Guide
     UNIX System V Release 4 Programmer's Reference Manual
     http://www.mipsabi.org has the MIPS ABI documents.

									Page 6

[top]

List of man pages available for IRIX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net