gauche-install man page

gauche-install — install files and set attributes


 1)* gauche-install [OPTION...] FILE DEST
 2)* gauche-install [OPTION...] FILE... DIRECTORY
 3)* gauche-install -d [OPTION...] DIRECTORY...
 4)  gauche-install -T DIRECTORY [OPTION...] FILE...
 5)  gauche-install -U DIRECTORY [OPTION...] FILE...


gauche-install is a program to install and remove files. On installation it allows to set ownership and permissions. This command is upward compatible with BSD install(1) and can be used as a drop-in replacement of it.   Notably, 1st, 2nd and 3rd command-line format above are compatible with BSD install.

This command is provided mainly for Gauche's extension packages to have simpler installation and configuration process.   Being certain that gauche-install is available, those packages don't need to worry about subtle differences between various install(1) commands.

The first format copies FILE on the file or in the directory named by DEST. The second format copies FILE ... into the directory DIRECTORY.

The third format ensures DIRECTORY exists.  If it doesn't, the command creates the path to the DIRECTORY , including any intermediate ones.

The fourth format installing FILE ... to the DIRECTORY. It is more convenient than the first and second formats in the following regards:

* If the destination directory does not exist, it is created (with any intermediate paths as needed).

* The list of files can be empty, so that when the list of installed files can be generated by configuration, you don't need to handle the empty case specially in Makefile. (With BSD install format, empty file list yields an error.)

* The directory prefix of files are preserved within the destination directory.  This is handy to install subtree of files. For example, the following command installs '/usr/share/foo/main', '/usr/share/foo/conf/x' and '/usr/share/foo/conf/y' with a single command.

 gauche-install -T /usr/share/foo main conf/x conf/y

Giving -p option suppresses this behavior and strips any directory prefix like the second format.  The following command line installs '/usr/share/foo/main', '/usr/share/foo/x' and '/usr/share/foo/y'.

 gauche-install -T /usr/share/foo -p main conf/x conf/y

The fifth format removes FILE ... in the DIRECTORY. Irrelevant options are ignored, so it is handy to uninstall files just by chaning -T in the fourth format to -U.


-C, --canonical-suffix

This is used specially to install Gauche's autogenerated Scheme source by experimental precompilation.  The generated file has a *.sci.  Upon installation, this command replaces the suffix for *.scm.

-d, --directory

Creates directories. (3rd format only).  It is only for the compatibility. Using the -T option, the destination directories are created automatically if missing.

-g, --group=GROUP

Change group of the installed file.

-h, --help

Show summary of options.

-m, --mode=MODE

Change mode of the installed file.

-n, --dry-run

Just prints what actions to be done.

-o, --owner=OWNER

Change owner of the installed file.

-p, --strip-prefix=PREFIX

Strip PREFIX directories from FILE(s) before installation. (4th/5th format only).


Adds #!PATH before the file contents. Useful to install scripts.

-S, --srcdir=directory

Look for files within directory; useful if VPATH is used in Makefiles.

-T, --target=directory

Installs files to the directory, creating paths if needed. Partial path of files are preserved unless -p option is given. (4th format only)

-U, --uninstall=directory

Reverse of -T, e.g. removes files from its destination. Other options (except -h and -n) are ignored.

-v, --verbose

Work verbosely.


gauche-install exits with status 0 on success.

See Also

gauche-package(1), install(1)

The program will be documented fully by the Gauche Developers´ Reference available via the info(1) system.


Shiro Kawai <>


Jens Thiele <>

Wrote this manpage for the Debian system.


Gauche 0.9.4 Gauche Commands