update bind 1

Documentation Version for Comments and Changes

You are invited to make any changes...add any comments.

Changes will `eventually` be merged into the offical documentation.

Leave any commnents here...


... back to index page OE documentation

Shrouding and Binding

The eushroud Command


eushroud [-full_debug] [-list] [-quiet] [-out shrouded_file] filename.ex[w/u] 

The eushroud command converts a Euphoria program, typically consisting of a main file plus many include files, into a single, compact file. A single file is easier to distribute, and it allows you to distribute your program to others without releasing your source code.

A shrouded file does not contain any Euphoria source code statements. Rather, it contains a low-level Intermediate Language (IL) that is executed by the back-end of the interpreter. A shrouded file does not require any parsing. It starts running immediately, and with large programs you will see a quicker start-up time. Shrouded files must be run using the interpreter back-end:

eubw.exe (Windows) or eub.exe (Unix).

This backend is freely available, and you can give it to any of your users who need it. It is stored in .../euphoria/bin in the Euphoria interpreter package. You can run your .il file with:

On Windows use:

eub myprog.il 
eubw myprog.il 

On Unix use:

eub myprog.il 

Although it does not contain any source statements, a .il file will generate a useful ex.err dump in case of a run-time error.

The shrouder will remove any routines and variables that your program doesn't use. This will give you a smaller .il file. There are often a great number of unused routines and unused variables. For example, your program might include several third party include files, plus some standard files from .../euphoria/include, but only use a few items from each file. The unused items will be deleted.


  • -full_debug: Make a somewhat larger .il file that contains enough debug information to provide a full ex.err dump when a crash occurs. Normally, variable names and line-number information is stripped out of the .il file, so the ex.err will simply have "no-name" where each variable name should be, and line numbers will only be accurate to the start of a routine or the start of a file. Only the private variable values are shown, not the global or local values. In addition to saving space, some people might prefer that the shrouded file, and any ex.err file, not expose as much information.
  • -list: Produce a listing in deleted.txt of the routines and constants that were deleted.
  • -quiet: Suppress normal messages and statistics. Only report errors.
  • -out shrouded_file: Write the output to shrouded_file.

The Euphoria interpreter will not perform tracing on a shrouded file. You must trace your original source.

Not Categorized, Please Help


Quick Links

User menu

Not signed in.

Misc Menu