mirror of
				https://github.com/thunderbrewhq/thunderbrew
				synced 2025-10-27 22:36:05 +03:00 
			
		
		
		
	
		
			
				
	
	
		
			137 lines
		
	
	
		
			3.5 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
			
		
		
	
	
			137 lines
		
	
	
		
			3.5 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
| .\" $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
 | 
