Select Git revision
pike.1 7.77 KiB
.\" name section last-modified title section-name product/status architecture
.ds ]L Pike
.TH pike 1 "$Date: 2008/08/12 20:18:50 $" Pike "Pike Manual" Pike
.\" On Solaris ]L will contain "Last modified $Date: 2008/08/12 20:18:50 $"
.\" while HPUX uses ]L to contain "Pike".
.\" On OSF/1 ]L will already contain the wanted string.
.if !\*(]LPike .ds ]L $Date: 2008/08/12 20:18:50 $ \" Solaris nroff
.\" Major (mj) and minor (mn) version of Pike
.nr mj 8
.nr mn 0
.SH NAME
pike \- pike compiler and interpreter
.SH SYNOPSIS
.B pike
[
.B \-driver\-options ...
] [
.IR script
[
.B script\-arguments ...
] ]
.SH DESCRIPTION
Compiler and interpreter for the Pike programming language.
.SH OPTIONS
The following options are supported by the loader:
.TP
.B \-a
Increase the debug level of the peep-hole optimizer with 1 (debug).
.TP
.BI \-a num
Set the debug level of the peep-hole optimizer to
.I num
(debug).
.TP
.BI \-D symbol
Define the preprocessor symbol
.I symbol
to 1.
.TP
.BI \-D symbol=value
Define the preprocessor symbol
.I symbol
to
.I value.
.TP
.B \-d
Increase the debug level with 1 (debug).
.TP
.BI \-d num
Set the debug level to
.I num
(debug).
.TP
.B \-dc
Increase the debug level of the Pike compiler (debug).
.TP
.B \-dg
Resets the debug malloc at every garbage collection (debug).
.TP
.B \-dL
.B Windows only:
Enable Windows error dialogs when dll files cannot be loaded.
It is common that Pike has modules which are linked to dll files that
are not available in all installations. Therefore these error dialogs
are disabled by default so that Pike does not hang on them when
attempting to load certain modules.
However, the error dialogs are the only way to see which dll's that
could not be loaded, so this option may be necessary to find out why a
certain module does not load.
.TP
.B \-dp
Turns off the peep hole optimization (debug).
.TP
.B \-ds
Debug signals (debug).
.TP
.B \-dt
Turn off tail recursion optimization (debug).
.TP
.B \-dT
Enable extra checks in the thread library, e.g. mutex sanity checks (debug).
.TP
.B \-l
Increase the debug level of the global optimizer with 1 (debug).
.TP
.BI \-l num
Set the debug level of the global optimizer to
.I num
(debug).
.TP
.BI \-m master_program
Use
.I master_program
instead of the ordinary master program.
.TP
.B \-p
Increase the level of profiling with 1 (debug).
.TP
.BI \-p num
Set the level of profiling to
.I num
(debug).
.TP
.BI \-ps
Enable stack profiling (debug).
.TP
.BI \-q num
End execution after executing
.I num
Pike instructions.
.TP
.B \-rt
Turn on runtime checking of arguments to function calls, and soft casts.
.TP
.B \-rT
Turn on
.B #pragma strict_types
for all files.
.TP
.BI \-s num
Set Pike stack size to
.I num
(minimum is 256).
.TP
.BI \-ss num
Set the pike C-level thread stack size to
.I num.
.TP
.B \-t
Increase the level of runtime trace with 1 (debug).
.TP
.BI \-t num
Set the level of runtime trace to
.I num
(debug).
.TP
.B \-tg
Log the gc runs to stderr.
.LP
The following options are supported by the default master program:
.TP
.B \-h, \-\-help,
Print help message and exit.
.TP
.BI \-e expr, \-\-execute =expr
Execute
.I expr
and exit.
.TP
.BI \-x toolname
Execute internal tool
.I toolname
from
.B Tools.Standalone.
Omit
.I toolname
for a list of available tools.
.TP
.B \-E, \-\-preprocess
Just run the preprocessor.
.TP
.BI \-I dir, \-\-include\-path =dir
Append
.I dir
to the include path.
.TP
.BI \-M dir, \-\-modue\-path =dir
Append
.I dir
to the module path.
.TP
.BI \-P dir, \-\-program\-path =dir
Append
.I dir
to the program path.
.TP
.B \-v, \-\-version
Print version of Pike and exit.
.TP
.BI \-V major.minor, \-\-compat =major.minor
Set the compatibility version to Pike version
.I major.minor.
.TP
.B \-w, \-\-warnings
Enable warnings.
.TP
.B \-W, \-\-woff, \-\-no\-warnings
Disable warnings.
.TP
.B \-\-assembler\-debug
Set the peephole optimizer debug level (debug).
.TP
.B \-\-autoreload
Turn on the
.I autoreload
mode of the master.
.TP
.B \-\-compiler\-trace
Turn on tracing of the Pike compiler (debug).
.TP
.B \-\-debug
Increase or set the debug level (debug).
.TP
.BI \-\-debug\-without =feature
Hide
.I feature
from the resolver (debug).
.TP
.B \-\-dumpversion
Print the Pike version number to stderr, e.g. "\n(mj.\n(mn.10\\n"
.TP
.B \-\-features
List some of the features that are enabled in this Pike binary
and exit (debug).
.TP
.B \-\-info
Show various information about this Pike installation and exit (debug).
.TP
.B \-\-optimizer\-debug
Set the global optimizer debug level (debug).
.TP
.B \-\-show\-all\-cpp\-warnings, \-\-picky\-cpp
Enable warnings for failing
.B #if constant()
expressions.
.TP
.B \-\-show\-paths
Show the paths pike will use and exit (debug).
.TP
.B \-\-trace
Increase the trace level (debug).
.TP
.BI \-\-trace =num
Set the trace level to
.I num
(debug).
.SH OPERANDS
The following operand is supported:
.TP
.I script
A path to a script written in Pike to be compiled and then executed.
Everything on the commandline after the script is passed as arguments
to the
.I main()
function in the script.
.LP
If no script is specified, pike will start in interactive- (Hilfe) mode.
.SH REGISTRY KEYS
On Windows, Pike is affected by the following keys in the registry:
.B HKEY_CURRENT_USER\eSoftware\ePike\e\n(mj.\n(mn\ePIKE_MASTER
.B HKEY_LOCAL_MACHINE\eSoftware\ePike\e\n(mj.\n(mn\ePIKE_MASTER
.RS
Specifies the name of the master program (overridden by
.BR \-m ).
If these keys are not set (the default), then Pike finds the master
by relative path from pike.exe.
.RE
.SH ENVIRONMENT
Pike is affected by the following environment variables:
.TP
.B PIKE_MASTER
Specifies the name of the master program (overridden by
.BR \-m ).
.LP
Depending on operating system Pike may be affected by the following
environment variables:
.TP
.B LC_ALL
Overrides the other LC_* variables.
.TP
.B LC_COLLATE
Specifies the character collation sequence.
.TP
.B LC_CTYPE
Specifies the character classification.
.TP
.B LC_MESSAGES
Specifies the language of the system messagedatabase.
.TP
.B LC_NUMERIC
Specifies the decimal and thousand delimiters.
.TP
.B LC_TIME
Specifies the date and time formats.
.LP
The default master program is affected by the following environment variables:
.TP
.B PIKE_INCLUDE_PATH
List of directories separated with colon (:), to search for include-files.
.TP
.B PIKE_PROGRAM_PATH
List of directories separated with colon (:), to search for program-files.
.TP
.B PIKE_MODULE_PATH
List of directories separated with colon (:), to search for modules.
.TP
.B LONG_PIKE_ERRORS
If set disables truncation of paths in backtraces.
.TP
.B SHORT_PIKE_ERRORS
If set and
.B LONG_PIKE_ERRORS
is not set, truncates paths to just the filename in backtraces.
.TP
.B PIKE_BACKTRACE_LEN
The maximum number of elements in arrays to describe in backtraces.
.LP
Note that the above environment variables have effect before the default
master program attempts to load the
.BR Getopt (3P)
module, which occurrs before the master program arguments are parsed.
.SH EXIT STATUS
The following exit values are returned:
.TP
.B 0
Successfull completion.
.TP
.B >0
An error occurred. See output on stderr (fd #2) for reason.
.SH FILES
.\" Set the paragraph distance to zero
.PD 0
.\" Basedirectory (bd)
.ds bd /usr/local/pike/\n(mj.\n(mn.*
.TP 24
.B \*(bd/lib/master.pike
default master program
.TP
.B \*(bd/lib/modules/*
default module directory
.TP
.B \*(bd/lib/?.?/*
backward compatibility modules
.TP
.B \*(bd/lib/include/*
pike include files
.TP
.B \*(bd/tools/pike.el
emacs fontlock definitions for pike-mode
.TP
.B \*(bd/include/pike/*
C-include files
.TP
.B \*(bd/man/*
manual pages for pike
.\" Restore the paragraph distance
.PD
.SH SEE ALSO
.BR hilfe (1),
.BR Getopt (3P),
.BR environ (5).
.\" Force a linebreak
.sp 0vu
.I Pike Programming Tutorial
.sp 0vu
.I Pike Reference Manual
.sp 0vu
.I Pike: an Introduction
by H. William Welliver III and Martin Bähr, 2007.
.sp 0vu
.I http://pike.ida.liu.se/
.sp 0vu