1start_erl(1) User Commands start_erl(1)
2
3
4
6 start_erl - Start Erlang for embedded systems on Windows systems.
7
9 The start_erl program is specific to Windows NT/2000/XP (and later ver‐
10 sions of Windows). Although there are programs with the same name on
11 other platforms, their functionality is different.
12
13 This program is distributed both in compiled form (under <Erlang
14 root>\\erts-<version>\\bin) and in source form (under <Erlang
15 root>\\erts-<version>\\src). The purpose of the source code is to ease
16 customization of the program for local needs, such as cyclic restart
17 detection. There is also a "make"-file, written for the nmake program
18 distributed with Microsoft Visual C++. This program can, however, be
19 compiled with any Win32 C compiler (possibly with minor modifications).
20
21 This program aids release handling on Windows systems. The program is
22 to be called by the erlsrv program, read up the release data file
23 start_erl.data, and start Erlang. Some options to start_erl are added
24 and removed by the release handler during upgrade with emulator restart
25 (more specifically option -data).
26
28 start_erl [<erl options>] ++ [<start_erl options>]
29
30 The start_erl program in its original form recognizes the fol‐
31 lowing options:
32
33 ++:
34 Mandatory. Delimits start_erl options from normal Erlang op‐
35 tions. Everything on the command line before ++ is inter‐
36 preted as options to be sent to the erl program. Everything
37 after ++ is interpreted as options to start_erl itself.
38
39 -reldir <release root>:
40 Mandatory if environment variable RELDIR is not specified
41 and no -rootdir option is specified. Tells start_erl where
42 the root of the release tree is located in the file system
43 (typically <Erlang root>\\releases). The start_erl.data file
44 is expected to be located in this directory (unless other‐
45 wise specified). If only option -rootdir is specified, the
46 directory is assumed to be <Erlang root>\\releases.
47
48 -rootdir <Erlang root directory>:
49 Mandatory if -reldir is not specified and no RELDIR exists
50 in the environment. This specifies the Erlang installation
51 root directory (under which the lib, releases, and
52 erts-<Version> directories are located). If only -reldir (or
53 environment variable RELDIR) is specified, the Erlang root
54 is assumed to be the directory exactly one level above the
55 release directory.
56
57 -data <data file name>:
58 Optional. Specifies another data file than start_erl.data in
59 the <release root>. It is specified relative to the <release
60 root> or absolute (including drive letter, and so on). This
61 option is used by the release handler during upgrade and is
62 not to be used during normal operation. Normally the release
63 data file is not to be named differently.
64
65 -bootflags <boot flags file name>:
66 Optional. Specifies a file name relative to the release di‐
67 rectory (that is, the subdirectory of <release root> where
68 the .boot file and others are located). The contents of this
69 file is appended to the command line when Erlang is started.
70 This makes it easy to start the emulator with different op‐
71 tions for different releases.
72
74 * As the source code is distributed, it can easily be modified to ac‐
75 cept other options. The program must still accept option -data with
76 the semantics described above for the release handler to work cor‐
77 rectly.
78
79 * The Erlang emulator is found by examining the registry keys for the
80 emulator version specified in the release data file. The new emula‐
81 tor must be properly installed before the upgrade for this to work.
82
83 * Although the program is located together with files specific to the
84 emulator version, it is not expected to be specific to the emulator
85 version. The release handler does not change option -machine to
86 erlsrv during emulator restart. Locate the (possibly customized)
87 start_erl program so that it is not overwritten during upgrade.
88
89 * The default options of the erlsrv program are not sufficient for
90 release handling. The machine started by erlsrv is be specified as
91 the start_erl program and the arguments are to contain ++ followed
92 by the desired options.
93
95 erlsrv(1), release_handler(3)
96
97
98
99Ericsson AB erts 12.3.2.1 start_erl(1)