19982016
Ericsson AB. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
start_erl
Patrik Nyblom
98-08-05
start_erl.xml
start_erl
Start Erlang for embedded systems on Windows NT®
This describes the program specific to Windows
NT. Although there exists programs with the same name on other
platforms, their functionality is not the same.
The program is distributed both in compiled
form (under <Erlang root>\\erts-<version>\\bin) and
in source form (under <Erlang
root>\\erts-<version>\\src).
The purpose of the source code is to make it possible to easily
customize the program for local needs, such as cyclic restart
detection etc. There is also a "make"-file, written for the
program distributed with Microsoft® Visual
C++®. The program can however be compiled with
any Win32 C compiler (possibly with slight modifications).
The purpose of the program is to aid release handling on
Windows NT®. The program should be called by the
program, read up the release data file
start_erl.data and start Erlang. Certain options to start_erl
are added and removed by the release handler during upgrade with
emulator restart (more specifically the option).
start_erl [<erl options>] ++ [<start_erl options>]
Start the Erlang emulator with the correct release data
The program in its original form
recognizes the following options:
++
- Mandatory, delimits start_erl options from normal Erlang
options. Everything on the command line before the
is interpreted as options to be sent to the
program. Everything after is
interpreted as options to itself.
-reldir <release root>
- Mandatory if the environment variable
is not specified and no
-rootdir option is given. Tells start_erl where the
root of the release tree is placed in the file-system (typically
<Erlang root>\\releases). The
file is expected to be
placed in this directory (if not otherwise specified). If
only the -rootdir option is given, the directory is
assumed to be <Erlang root>\\releases.
-rootdir <Erlang root directory>
- Mandatory if -reldir is not given and there is
no in the environment. This
specifies the Erlang installation root directory (under
which the lib, releases and
erts-<Version> directories are placed). If only
-reldir (or the environment variable
) is given, the Erlang root is assumed to
be the directory exactly one level above the release
directory.
-data <data file name>
- Optional, specifies another data file than start_erl.data
in the <release root>. It is specified relative to the
<release root> or absolute (including drive letter
etc.). This option is used by the release handler during
upgrade and should not be used during normal
operation. The release data file should not normally be
named differently.
-bootflags <boot flags file name>
- Optional, specifies a file name relative to actual release
directory (that is the subdirectory of <release
root> where the file etc. are placed).
The contents of this file is appended to the command line
when Erlang is started. This makes it easy to start the
emulator with different options for different releases.
NOTES
As the source code is distributed, it can easily be modified to
accept other options. The program must still accept the
option with the semantics described above for the
release handler to work correctly.
The Erlang emulator is found by examining the registry keys for
the emulator version specified in the release data file. The new
emulator needs to be properly installed before the upgrade for
this to work.
Although the program is located together with files specific to
emulator version, it is not expected to be specific to the
emulator version. The release handler does not change the
option to during emulator restart.
Place the (possibly customized) program so that
it is not overwritten during upgrade.
The program's default options are not
sufficient for release handling. The machine
starts should be specified as the program and
the arguments should contain the followed by desired
options.
SEE ALSO
erlsrv(1), release_handler(3)