man ilgac (Commandes) - manage the Portable.NET assembly cache
NAME
ilgac - manage the Portable.NET assembly cache
SYNOPSIS
ilgac [ options ] [ assembly [ version ] ]
DESCRIPTION
Ilgac manages the Portable.NET assembly cache, allowing library assemblies to be installed, uninstalled, or listed.
OPTIONS
- -i, --install
- Install the specified assemblies into the cache. See the section "INSTALLING ASSEMBLIES" below for more information.
- -u, --uninstall
- Uninstall the specified assemblies from the cache. See the section "UNINSTALLING ASSEMBLIES" below for more information.
- -l, --list
- List the contents of the assembly cache. See the section "LISTING ASSEMBLIES" below for more information.
- -f, --force
- Force installation to proceed even if there is an existing assembly with the specified name and version.
- -d, --default
- Install the assembly as the fallback default version. When used with `--list', this will list the fallback default versions in addition to the regular assembly versions.
- -L, --link
- Create a symbolic link within the cache rather than copying the assembly.
- -S DIR, --subdir DIR
- Specify a resource sub-directory (e.g. "de").
- -c DIR, --cache DIR
- Specify the location of the assembly cache.
- -s, --silent
- Do not print status messages.
- --help
- Print a usage message for the ilgac program.
- -v, --version
- Print the version of the ilgac program.
- --
- Marks the end of the command-line options, and the beginning of the input filenames. You may need to use this if your filename begins with '-'. e.g. "ilgac -i -- -input.dll".
INSTALLING ASSEMBLIES
In the examples that follow, we assume that the assemblies have the version number `1.2.3400.0' unless otherwise stated.
The following command-line installs the assembly `foobar.dll' within the assembly cache and makes it the default version:
ilgac --install --default foobar.dllThis will create the following file and symbolic link under the top-level cache directory:
1.2.3400.0/foobar.dll foobar.dll -> 1.2.3400.0/foobar.dllNote: if the assembly version number is `0.0.0.0', then the assembly will be stored in the main directory without a symbolic link.
You can install an older version (1.1.5000.0) of `foobar.dll' side by side by omitting the `--default' option:
ilgac --install foobar.dllAfter installing both, the assembly cache directory structure will look like this:
1.1.5000.0/foobar.dll 1.2.3400.0/foobar.dll foobar.dll -> 1.2.3400.0/foobar.dllThe runtime engine, ilrun(1), will first look in the version sub-directory for an exact match. If a match is not found, it will then look for the default version in the top-level cache directory.
If you had a satelite resource assembly for German, then you would install it as follows:
ilgac --install --default --subdir de foobar.resources.dllAfter all of the above commands, the directory structure will appear as follows:
1.1.5000.0/foobar.dll 1.2.3400.0/foobar.dll 1.2.3400.0/de/foobar.resources.dll foobar.dll -> 1.2.3400.0/foobar.dll de/foobar.resources.dll -> 1.2.3400.0/de/foobar.resources.dllYou can install multiple assemblies at once by specifying them one at a time on the command-line:
ilgac --install --default foobar.dll example.dll
UNINSTALLING ASSEMBLIES
The easiest way to uninstall an assembly is to specify its name and version number:
ilgac --uninstall foobar 1.2.3400.0This will search the assembly cache for a match and remove the corresponding assembly. If the assembly is registered as a default fallback, then the default symbolic link will also be removed.
If the version number is unknown, you can retrieve it from an existing assembly with the same version. For example:
ilgac --uninstall foobar.dll
LISTING ASSEMBLIES
The entire contents of the assembly cache can be listed using the following command:
ilgac --listNormally, only the main version of an assembly is listed - symbolic links for default versions are omitted. They can be included in the output by specifying the `--default' command-line option.
You can list all assemblies that match particular name or version combinations as follows:
ilgac --list foobar ilgac --list 1.2.3400.0 ilgac --list foobar 1.2.3400.0 example 1.1.5000.0
AUTHOR
Written by Southern Storm Software, Pty Ltd.
http://www.southern-storm.com.au/
SEE ALSO
DIAGNOSTICS
Exit status is 1 if an error occurred while processing the input. Otherwise the exit status is 0.
BUGS
Under Windows, the default versions of assemblies are always stored in the main cache directory because it isn't possible to create symbolic links.