$ make escript ESCRIPT_ZIP=zip
From b5d4cb91f80c833795a2d87050c3674bb7aecdc5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Escripts are an alternative to release. They are meant to be
-used for small command line executables written in Erlang. They are not self-contained, unlike releases.
-Erlang must be installed for them to run. This however means
-that they are fairly small compared to releases. For self-contained executables, check self-extracting releases. Erlang.mk uses If Run the following command to generate an escript: This will by default create an escript with the same name as
-the project, in the project’s directory. If the project is
-called You can run the escript as you would any executable: You can change the name of the escript by setting The escript header can be entirely customized. The first line
-is the shebang, set by Finally, Generating an escript is a two-part process. First, a zip file
-is created with the contents of the escript. Then a header is
-added to this file to create the escript. It is possible to add commands that will be executed between
-the two steps. You can for example add extra files to the zip
-archive: The Erlang.mk will by default compile BEAM files with debug
-information. You may want to disable this behavior to obtain
-smaller escript files. Simply set Escripts are an alternative to release. They are meant to be
+used for small command line executables written in Erlang. They are not self-contained, unlike releases.
+Erlang must be installed for them to run. This however means
+that they are fairly small compared to releases. For self-contained executables, check self-extracting releases. Erlang.mk uses If Run the following command to generate an escript: This will by default create an escript with the same name as
+the project, in the project’s directory. If the project is
+called You can run the escript as you would any executable: You can change the name of the escript by setting The escript header can be entirely customized. The first line
+is the shebang, set by Finally, Generating an escript is a two-part process. First, a zip file
+is created with the contents of the escript. Then a header is
+added to this file to create the escript. It is possible to add commands that will be executed between
+the two steps. You can for example add extra files to the zip
+archive: The Erlang.mk will by default compile BEAM files with debug
+information. You may want to disable this behavior to obtain
+smaller escript files. Simply set Escripts
-Requirements
-p7zip
by default to generate the escript
-archive. Make sure it is installed. On most systems the
-package is named p7zip
; on Ubuntu you need p7zip-full
.p7zip
is unavailable, zip
may be used by setting
-the ESCRIPT_ZIP
variable. For example:$ make escript ESCRIPT_ZIP=zip
Generating an escript
-$ make escript
relx
then the escript will be in ./relx
.$ ./relx
Configuration
-ESCRIPT_NAME
.
-The name determines both the default output file name and the
-entry module containing the function main/1
.ESCRIPT_FILE
can be set if you need a different file name
-or location.ESCRIPT_SHEBANG
. The second line is
-a comment, set by ESCRIPT_COMMENT
. The third line is the
-arguments the VM will use when running the escript, set by
-ESCRIPT_EMU_ARGS
.ESCRIPT_ZIP
can be set to customize the command used
-to create the zip file. Read on for more information.Extra files
-ESCRIPT_ZIP
variable contains the command to run to add
-files to the zip archive ESCRIPT_ZIP_FILE
.Optimizing for size
-ERLC_OPTS
to a value that
-does not include +debug_info
.Requirements
+p7zip
by default to generate the escript
+archive. Make sure it is installed. On most systems the
+package is named p7zip
; on Ubuntu you need p7zip-full
.p7zip
is unavailable, zip
may be used by setting
+the ESCRIPT_ZIP
variable. For example:$ make escript ESCRIPT_ZIP=zip
Generating an escript
+$ make escript
relx
then the escript will be in ./relx
.$ ./relx
Configuration
+ESCRIPT_NAME
.
+The name determines both the default output file name and the
+entry module containing the function main/1
.ESCRIPT_FILE
can be set if you need a different file name
+or location.ESCRIPT_SHEBANG
. The second line is
+a comment, set by ESCRIPT_COMMENT
. The third line is the
+arguments the VM will use when running the escript, set by
+ESCRIPT_EMU_ARGS
.ESCRIPT_ZIP
can be set to customize the command used
+to create the zip file. Read on for more information.Extra files
+escript-zip::
+ $(verbose) $(ESCRIPT_ZIP) $(ESCRIPT_ZIP_FILE) priv/templates/*
ESCRIPT_ZIP
variable contains the command to run to add
+files to the zip archive ESCRIPT_ZIP_FILE
.Optimizing for size
+ERLC_OPTS
to a value that
+does not include +debug_info
.