123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136 |
- .\" $Id: luac.man,v 1.28 2006/01/06 16:03:34 lhf Exp $
- .TH LUAC 1 "$Date: 2006/01/06 16:03:34 $"
- .SH NAME
- luac \- Lua compiler
- .SH SYNOPSIS
- .B luac
- [
- .I options
- ] [
- .I filenames
- ]
- .SH DESCRIPTION
- .B luac
- is the Lua compiler.
- It translates programs written in the Lua programming language
- into binary files that can be later loaded and executed.
- .LP
- The main advantages of precompiling chunks are:
- faster loading,
- protecting source code from accidental user changes,
- and
- off-line syntax checking.
- .LP
- Pre-compiling does not imply faster execution
- because in Lua chunks are always compiled into bytecodes before being executed.
- .B luac
- simply allows those bytecodes to be saved in a file for later execution.
- .LP
- Pre-compiled chunks are not necessarily smaller than the corresponding source.
- The main goal in pre-compiling is faster loading.
- .LP
- The binary files created by
- .B luac
- are portable only among architectures with the same word size and byte order.
- .LP
- .B luac
- produces a single output file containing the bytecodes
- for all source files given.
- By default,
- the output file is named
- .BR luac.out ,
- but you can change this with the
- .B \-o
- option.
- .LP
- In the command line,
- you can mix
- text files containing Lua source and
- binary files containing precompiled chunks.
- This is useful to combine several precompiled chunks,
- even from different (but compatible) platforms,
- into a single precompiled chunk.
- .LP
- You can use
- .B "'\-'"
- to indicate the standard input as a source file
- and
- .B "'\--'"
- to signal the end of options
- (that is,
- all remaining arguments will be treated as files even if they start with
- .BR "'\-'" ).
- .LP
- The internal format of the binary files produced by
- .B luac
- is likely to change when a new version of Lua is released.
- So,
- save the source files of all Lua programs that you precompile.
- .LP
- .SH OPTIONS
- Options must be separate.
- .TP
- .B \-l
- produce a listing of the compiled bytecode for Lua's virtual machine.
- Listing bytecodes is useful to learn about Lua's virtual machine.
- If no files are given, then
- .B luac
- loads
- .B luac.out
- and lists its contents.
- .TP
- .BI \-o " file"
- output to
- .IR file ,
- instead of the default
- .BR luac.out .
- (You can use
- .B "'\-'"
- for standard output,
- but not on platforms that open standard output in text mode.)
- The output file may be a source file because
- all files are loaded before the output file is written.
- Be careful not to overwrite precious files.
- .TP
- .B \-p
- load files but do not generate any output file.
- Used mainly for syntax checking and for testing precompiled chunks:
- corrupted files will probably generate errors when loaded.
- Lua always performs a thorough integrity test on precompiled chunks.
- Bytecode that passes this test is completely safe,
- in the sense that it will not break the interpreter.
- However,
- there is no guarantee that such code does anything sensible.
- (None can be given, because the halting problem is unsolvable.)
- If no files are given, then
- .B luac
- loads
- .B luac.out
- and tests its contents.
- No messages are displayed if the file passes the integrity test.
- .TP
- .B \-s
- strip debug information before writing the output file.
- This saves some space in very large chunks,
- but if errors occur when running a stripped chunk,
- then the error messages may not contain the full information they usually do.
- For instance,
- line numbers and names of local variables are lost.
- .TP
- .B \-v
- show version information.
- .SH FILES
- .TP 15
- .B luac.out
- default output file
- .SH "SEE ALSO"
- .BR lua (1)
- .br
- http://www.lua.org/
- .SH DIAGNOSTICS
- Error messages should be self explanatory.
- .SH AUTHORS
- L. H. de Figueiredo,
- R. Ierusalimschy and
- W. Celes
- .\" EOF
|