Previous | Contents | Next
Chapter 3: MakeNSIS Usage
NSIS installers are generated by using the 'MakeNSIS' program to compile a NSIS script (.NSI) into an installer executable. The NSIS development kit installer sets up your computer so that you can compile a .nsi file by simply right-clicking on it in explorer, and selecting 'compile'.
If you want to use MakeNSIS on the command line, the syntax of the makensis command is:
makensis [option | script.nsi | - [...]]
3.1 Options
- /LICENSE displays a keen license page.
- The /V switch followed by a number between 0 and 4 will set the verbosity of output accordingly. 0=no output, 1=errors only, 2=warnings and errors, 3=info, warnings, and errors, 4=all output.
- The /O switch followed by a filename tells the compiler to print its log to that file (instead of the screen)
- /PAUSE makes makensis pause before quitting, which is useful when executing directly from Windows.
- /NOCONFIG disables inclusion of <path to makensis.exe>\nsisconf.nsh. Without this parameter, installer defaults are set from nsisconf.nsh.
- /CMDHELP prints basic usage information for command (if specified), or all commands (if command is not specified).
- /HDRINFO prints out information on what options were used to compile makensis was compiled with.
- /NOCD disabled the current directory change to that of the .nsi file
- Using the /D switch one or more times will add to symbols to the globally defined list (See !define).
- Using the /X switch one or more times will execute the code you specify following it. Example: "/XAutoCloseWindow false"
- Specifying a dash (-) for the script name will tell makensis to use the standard input as a source.
3.2 Notes
- Parameters are processed by order.
makensis /Ddef script.nsi
is not the same as makensis script.nsi /Ddef
. - If multiple scripts are specified, they are treated as one concatenated script.
3.3 Examples
Basic usage:
makensis.exe myscript.nsi
Quiet mode:
makensis.exe /V1 myscript.nsi
Force compressor:
makensis.exe /X"SetCompressor /FINAL lzma" myscript.nsi
Change script behavior:
makensis.exe /DUSE_UPX /DVERSION=1.337 /DNO_IMAGES myscript.nsi
Parameters order:
makensis /XSection sectioncontents.nsi /XSectionEnd
Previous | Contents | Next