1 .TH LPLC "1" "2017-02-09" "lplc 0.1" "User Commands" 2 .SH NAME 3 lplc \- Lichen Python-like compiler 4 .SH SYNOPSIS 5 .B lplc 6 .RI [ options ] 7 .I file 8 .br 9 .B lplc 10 .I --help 11 .br 12 .B lplc 13 .I --version 14 .SH DESCRIPTION 15 .B lplc 16 compiles programs written in the Lichen language, taking the indicated 17 .I file 18 representing the principal source file of a program, compiling the program to an 19 intermediate representation, and then building the result using a C compiler and 20 .B make 21 to produce an executable. Other source files need not be specified: they will be 22 identified by the compiler and loaded as required. 23 .SH OPTIONS 24 The following options may be specified: 25 .PP 26 .TP 27 .B \-c 28 Only partially compile the program; do not attempt to build or link it 29 .TP 30 .B \-E 31 Ignore environment variables affecting the module search path 32 .TP 33 .B \-g 34 Generate debugging information for the built executable 35 .TP 36 .B \-P 37 Show the module search path 38 .TP 39 .B \-q 40 Silence messages produced when building an executable 41 .TP 42 .B \-r 43 Reset (discard) cached program information; inspect the whole program again 44 .TP 45 .B \-t 46 Silence timing messages 47 .TP 48 .B \-tb 49 Provide a traceback for any internal errors (development only) 50 .TP 51 .B \-v 52 Report compiler activities in a verbose fashion (development only) 53 .PP 54 Some options may be followed by values, either immediately after the option 55 (without any space between) or in the arguments that follow them: 56 .PP 57 .TP 58 .B \-o 59 Indicate the output executable name 60 .TP 61 .B \-W 62 Show warnings on the topics indicated 63 .PP 64 Currently, the following warnings are supported: 65 .TP 66 .B all 67 Show all possible warnings 68 .TP 69 .B args 70 Show invocations where a callable may be involved that cannot accept 71 the arguments provided 72 .PP 73 The following informational options can be specified to produce output instead 74 of compiling a program: 75 .PP 76 .TP 77 .BR \-h ", " \-? ", " \-\-help 78 Show a summary of the command syntax and options 79 .TP 80 .BR \-V ", " \-\-version 81 Show version information for this tool 82 .SH ENVIRONMENT VARIABLES 83 .TP 84 ARCH 85 Indicates a prefix to be used with tool names when building an executable. This 86 permits things like cross-compilation where tools have been provided with names 87 featuring architecture- and system-specific prefixes. For example, 88 .I mipsel-linux-gnu 89 may be used to indicate the use of tools for the MIPS architecture running 90 GNU/Linux in little-endian mode. 91 .TP 92 LICHENPATH 93 A collection of directories that are searched before those in the collection 94 comprising the default "module search path". This collection, if already defined 95 in the environment, may be excluded by specifying the 96 .B \-E 97 option. 98 .SH AUTHOR 99 Paul Boddie <paul@boddie.org.uk> 100 .SH RESOURCES 101 The project Web site: http://projects.boddie.org.uk/Lichen 102 .SH COPYRIGHT 103 Copyright \(co 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 104 2014, 2015, 2016, 2017 Paul Boddie <paul@boddie.org.uk> 105 .PP 106 This program is free software; you may redistribute it under the terms of 107 the GNU General Public License version 3 or (at your option) a later version. 108 This program has absolutely no warranty. 109 .SH SEE ALSO 110 .BR cc (1), 111 .BR make (1).