erlc man page on Ubuntu

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

erlc(1)				 User Commands			       erlc(1)

NAME
       erlc - Compiler

DESCRIPTION
       The  erlc  program  provides  a	common way to run all compilers in the
       Erlang system. Depending on the extension of each input file, erlc will
       invoke  the appropriate compiler. Regardless of which compiler is used,
       the same flags are used to provide parameters such as include paths and
       output directory.

       The  current  working  directory, ".", will not be included in the code
       path when running the compiler (to avoid loading Beam  files  from  the
       current	working	 directory  that could potentially be in conflict with
       the compiler or Erlang/OTP system used by the compiler).

EXPORTS
       erlc flags file1.ext file2.ext...

	      Erlc compiles one or more files.	The  files  must  include  the
	      extension,  for example .erl for Erlang source code, or .yrl for
	      Yecc source code. Erlc uses the extension to invoke the  correct
	      compiler.

GENERALLY USEFUL FLAGS
       The following flags are supported:

	 -I  directory
	     Instructs	the compiler to search for include files in the speci‐
	     fied directory. When encountering	an  -include  or  -include_dir
	     directive,	 the compiler searches for header files in the follow‐
	     ing directories:

	   * ".", the current working directory of the file server; .br .br

	   * the base name of the compiled file; .br .br

	   * the directories specified using  the  -I  option.	The  directory
	     specified last is searched first. .br .br

	 -o  directory
	     The  directory  where the compiler should place the output files.
	     If not specified, output files will  be  placed  in  the  current
	     working directory.

	 -D name
	     Defines a macro.

	 -D name= value
	     Defines a macro with the given value. The value can be any Erlang
	     term. Depending on the platform, the value may need to be	quoted
	     if the shell itself interprets certain characters. On Unix, terms
	     which contain tuples and list must be quoted. Terms which contain
	     spaces must be quoted on all platforms.

	 -W number
	     Sets  warning  level to number. Default is 1. Use -W0 to turn off
	     warnings.

	 -W  Same as -W1. Default.

	 -v  Enables verbose output.

	 -b  output-type
	     Specifies the type of output file. Generally, output-type is  the
	     same  as  the  file  extension of the output file but without the
	     period. This option will be ignored by compilers that  have  a  a
	     single output format.

	 -hybrid
	     Compile using the hybrid-heap emulator. This is mainly useful for
	     compiling native code, which needs to be compiled with  the  same
	     run-time system that it should be run on.

	 -smp
	     Compile using the SMP emulator. This is mainly useful for compil‐
	     ing native code, which needs to be compiled with  the  same  run-
	     time system that it should be run on.

	 --  Signals  that  no more options will follow. The rest of the argu‐
	     ments will be treated as file names,  even	 if  they  start  with
	     hyphens.

	 + term
	     A	flag  starting with a plus (' +') rather than a hyphen will be
	     converted to an Erlang term and passed unchanged to the compiler.
	     For  instance,  the export_all option for the Erlang compiler can
	     be specified as follows:

	     erlc +export_all file.erl
	     Depending on the platform, the value may need to be quoted if the
	     shell  itself interprets certain characters. On Unix, terms which
	     contain tuples and list must be quoted. Terms which contain  spa‐
	     ces must be quoted on all platforms.

SPECIAL FLAGS
       The  flags in this section are useful in special situations such as re-
       building the OTP system.

	 -pa  directory
	     Appends directory to the front of the code path  in  the  invoked
	     Erlang emulator. This can be used to invoke another compiler than
	     the default one.

	 -pz  directory
	     Appends directory to the code path in the invoked	Erlang	emula‐
	     tor.

SUPPORTED COMPILERS
	 .erl
	     Erlang source code. It generates a .beam file.

	     The  options  -P,	-E,  and  -S are equivalent to +'P', +'E', and
	     +'S', except that it is  not  necessary  to  include  the	single
	     quotes to protect them from the shell.

	     Supported options: -I, -o, -D, -v, -W, -b.

	 .yrl
	     Yecc source code. It generates an .erl file.

	     Use  the  -I option with the name of a file to use that file as a
	     customized prologue file (the includefile option).

	     Supported options: -o, -v, -I, -W (see above).

	 .mib
	     MIB for SNMP. It generates a .bin file.

	     Supported options: -I, -o, -W.

	 .bin
	     A compiled MIB for SNMP. It generates a .hrl file.

	     Supported options: -o, -v.

	 .rel
	     Script file. It generates a boot file.

	     Use the -I to name directories to	be  searched  for  application
	     files  (equivalent	 to  the  path	in  the	 option	 list for sys‐
	     tools:make_script/2).

	     Supported options: -o.

	 .asn1
	     ASN1 file.

	     Creates an .erl, .hrl, and .asn1db file from an .asn1 file.  Also
	     compiles  the  .erl  using	 the Erlang compiler unless the +noobj
	     options is given.

	     Supported options: -I, -o, -b, -W.

	 .idl
	     IC file.

	     Runs the IDL compiler.

	     Supported options: -I, -o.


ENVIRONMENT VARIABLES
	 ERLC_EMULATOR
	     The command for starting the emulator.
		    Default is	erl in the same directory as the  erlc program
		    itself, or if it doesn't exist,  erl in any of the	direc‐
	     tories
		    given in the  PATH environment variable.

SEE ALSO
       erl(1), compile(3erl), yecc(3erl), snmp(3erl)

Ericsson AB			  erts 5.7.4			       erlc(1)
[top]

List of man pages available for Ubuntu

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