pike - pike compiler and interpreter
pike [ -driver-options ... ] [ script [
script-arguments ... ] ]
Compiler and interpreter for the Pike programming language.
The following options are supported by the loader:
- -a
- Increase the debug level of the peep-hole optimizer with 1 (debug).
- -anum
- Set the debug level of the peep-hole optimizer to num (debug).
- -Dsymbol
- Define the preprocessor symbol symbol to 1.
- -Dsymbol=value
- Define the preprocessor symbol symbol to value.
- -d
- Increase the debug level with 1 (debug).
- -dnum
- Set the debug level to num (debug).
- -dc
- Increase the debug level of the Pike compiler (debug).
- -dg
- Resets the debug malloc at every garbage collection (debug).
- -dL
- 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.
- -dp
- Turns off the peep hole optimization (debug).
- -ds
- Debug signals (debug).
- -dt
- Turn off tail recursion optimization (debug).
- -dT
- Enable extra checks in the thread library, e.g. mutex sanity checks
(debug).
- -l
- Increase the debug level of the global optimizer with 1 (debug).
- -lnum
- Set the debug level of the global optimizer to num (debug).
- -mmaster_program
- Use master_program instead of the ordinary master program.
- -p
- Increase the level of profiling with 1 (debug).
- -pnum
- Set the level of profiling to num (debug).
- -ps
- Enable stack profiling (debug).
- -qnum
- End execution after executing num Pike instructions.
- -rt
- Turn on runtime checking of arguments to function calls, and soft
casts.
- -rT
- Turn on #pragma strict_types for all files.
- -snum
- Set Pike stack size to num (minimum is 256).
- -ssnum
- Set the pike C-level thread stack size to num.
- -t
- Increase the level of runtime trace with 1 (debug).
- -tnum
- Set the level of runtime trace to num (debug).
- -tg
- Log the gc runs to stderr.
The following options are supported by the default master
program:
- -h, --help,
- Print help message and exit.
- -eexpr,--execute=expr
- Execute expr and exit.
- -xtoolname
- Execute internal tool toolname from Tools.Standalone. Omit
toolname for a list of available tools.
- -E, --preprocess
- Just run the preprocessor.
- -Idir,--include-path=dir
- Append dir to the include path.
- -Mdir,--modue-path=dir
- Append dir to the module path.
- -Pdir,--program-path=dir
- Append dir to the program path.
- -v, --version
- Print version of Pike and exit.
- -Vmajor.minor,--compat=major.minor
- Set the compatibility version to Pike version major.minor.
- -w, --warnings
- Enable warnings.
- -W, --woff,
--no-warnings
- Disable warnings.
- --assembler-debug
- Set the peephole optimizer debug level (debug).
- --autoreload
- Turn on the autoreload mode of the master.
- --compiler-trace
- Turn on tracing of the Pike compiler (debug).
- --debug
- Increase or set the debug level (debug).
- --debug-without=feature
- Hide feature from the resolver (debug).
- --dumpversion
- Print the Pike version number to stderr, e.g. "8.0.10\n"
- --features
- List some of the features that are enabled in this Pike binary and exit
(debug).
- --info
- Show various information about this Pike installation and exit
(debug).
- --optimizer-debug
- Set the global optimizer debug level (debug).
- --show-all-cpp-warnings,
--picky-cpp
- Enable warnings for failing #if constant() expressions.
- --show-paths
- Show the paths pike will use and exit (debug).
- --trace
- Increase the trace level (debug).
- --trace=num
- Set the trace level to num (debug).
The following operand is supported:
- 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 main() function in the script.
If no script is specified, pike will start in interactive- (Hilfe)
mode.
On Windows, Pike is affected by the following keys in the
registry:
HKEY_CURRENT_USER\Software\Pike\8.0\PIKE_MASTER
HKEY_LOCAL_MACHINE\Software\Pike\8.0\PIKE_MASTER
Specifies the name of the master program (overridden by
-m). If these keys are not set (the default), then Pike finds the
master by relative path from pike.exe.
Pike is affected by the following environment variables:
- PIKE_MASTER
- Specifies the name of the master program (overridden by -m).
Depending on operating system Pike may be affected by the
following environment variables:
- LC_ALL
- Overrides the other LC_* variables.
- LC_COLLATE
- Specifies the character collation sequence.
- LC_CTYPE
- Specifies the character classification.
- LC_MESSAGES
- Specifies the language of the system messagedatabase.
- LC_NUMERIC
- Specifies the decimal and thousand delimiters.
- LC_TIME
- Specifies the date and time formats.
The default master program is affected by the following
environment variables:
- PIKE_INCLUDE_PATH
- List of directories separated with colon (:), to search for
include-files.
- PIKE_PROGRAM_PATH
- List of directories separated with colon (:), to search for
program-files.
- PIKE_MODULE_PATH
- List of directories separated with colon (:), to search for modules.
- LONG_PIKE_ERRORS
- If set disables truncation of paths in backtraces.
- SHORT_PIKE_ERRORS
- If set and LONG_PIKE_ERRORS is not set, truncates paths to just the
filename in backtraces.
- PIKE_BACKTRACE_LEN
- The maximum number of elements in arrays to describe in backtraces.
Note that the above environment variables have effect before the
default master program attempts to load the Getopt(3P) module, which
occurrs before the master program arguments are parsed.
The following exit values are returned:
- 0
- Successfull completion.
- >0
- An error occurred. See output on stderr (fd #2) for reason.
- /usr/local/pike/8.0.*/lib/master.pike
- default master program
- /usr/local/pike/8.0.*/lib/modules/*
- default module directory
- /usr/local/pike/8.0.*/lib/?.?/*
- backward compatibility modules
- /usr/local/pike/8.0.*/lib/include/*
- pike include files
- /usr/local/pike/8.0.*/tools/pike.el
- emacs fontlock definitions for pike-mode
- /usr/local/pike/8.0.*/include/pike/*
- C-include files
- /usr/local/pike/8.0.*/man/*
- manual pages for pike
hilfe(1), Getopt(3P), environ(5).
Pike Programming Tutorial
Pike Reference Manual
Pike: an Introduction by H. William Welliver III and Martin
Bähr, 2007.
http://pike.ida.liu.se/