Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
OPAM-INSTALL(1)			  Opam Manual		       OPAM-INSTALL(1)

       opam-install - Install a	list of	packages.

       opam install [OPTION]...	PACKAGES...

       This command installs one or more packages to the currently selected
       compiler. To install packages for another compiler, you need to switch
       compilers using opam switch. You	can remove installed packages with
       opam remove, and	list installed packages	with opam list -i. See opam
       pin as well to understand how to	manage package versions.

       This command makes OPAM use the dependency solver to compute the
       transitive closure of dependencies to be	installed, and will also
       handle conflicts. If the	dependency solver returns more than one
       solution, OPAM will arbitrarily select the first	one. If	dependencies
       are to be installed, OPAM will confirm if the installation should

	   List	of package names, with an optional version or constraint, e.g
	   `pkg', `pkg.1.0' or `pkg>=0.5'.

       -b, --keep-build-dir
	   Keep	the build directory. This is equivalent	to setting
	   $OPAMKEEPBUILDDIR to	"true".

       -d, --build-doc
	   Build the package documentation. This is equivalent to setting
	   $OPAMBUILDDOC to "true".

	   Install all its dependencies, but don't actually install the

	   Simulate the	command, but don't actually perform any	changes.

       -e TAGS,	--external=TAGS
	   Display the external	packages associated to the given tags. This is
	   deprecated, use `opam list --external' instead

	   This	option registers the actions into the OPAM database, without
	   actually performing them. WARNING: This option is dangerous and
	   likely to break your	OPAM environment. You probably want
	   `--dry-run'.	You've been warned.

       -j JOBS,	--jobs=JOBS
	   Set the maximal number of concurrent	jobs to	use. You can also set
	   it using the	$OPAMJOBS environment variable.

	   Save	the result output of an	OPAM run in a computer-readable	file

       -m MAKE,	--make=MAKE
	   Use MAKE as the default 'make' command.

	   Do not verify the checksum of downloaded archives.This is
	   equivalent to setting $OPAMNOCHECKSUMS to "true".

	   Reject the installation of packages that don't provide a checksum
	   for the upstream archives. This is equivalent to setting

	   Mark	given packages as installed roots. This	is the default for
	   newly manually-installed packages.

	   Call	the solver and display the actions. Don't perform any changes.

       -t, --build-test
	   Build and run the package unit-tests. This is equivalent to setting
	   $OPAMBUILDTEST to "true".

	   Mark	given packages as "installed automatically".

       These options are common	to all commands.

       --color=WHEN (absent=auto)
	   Colorize the	output.	WHEN must be one of `always', `never' or

	   Specify user	preferences for	dependency solving for this run.
	   Overrides both $OPAMCRITERIA	and $OPAMUPGRADECRITERIA. For details
	   on the supported language, and the external solvers available, see A
	   general guide to using solver preferences can be found at The default value
	   for upgrades, and

	   Debug option: Save the CUDF requests	sent to	the solver to

	   Print debug message to stderr. This is equivalent to	setting
	   $OPAMDEBUG to "true".

	   Like	`--debug', but allows specifying the debug level (`--debug'
	   sets	it to 1). Equivalent to	setting	$OPAMDEBUG to a	positive

	   Print the git version if it exists and exit.

       --help[=FMT] (default=pager)
	   Show	this help in format FMT	(pager,	plain or groff).

	   Do not install base packages	(useful	for testing purposes). This is
	   equivalent to setting $OPAMNOBASEPACKAGES to	a non-empty string.

	   OPAM	will replace itself with a newer binary	found at OPAMROOT/opam
	   if present. This disables this behaviour.

       -q, --quiet
	   Be quiet when installing a new compiler.

       --root=ROOT (absent=~/.opam)
	   Use ROOT as the current root	path. This is equivalent to setting

	   Make	sure nothing will be automatically updated or rewritten.
	   Useful for calling from completion scripts, for example. Will fail
	   whenever such an operation is needed	; also avoids waiting for
	   locks, skips	interactive questions and overrides the	OPAMDEBUG

	   Specify the name of the external dependency solver. The default
	   value is aspcud. Either 'aspcud', 'packup' or a custom command that
	   may contain the variables %{input}%,	%{output}% and %{criteria}%

	   Fail	whenever an error is found in a	package	definition or a
	   configuration file. The default is to continue silently if

	   Use SWITCH as the current compiler switch. This is equivalent to
	   setting $OPAMSWITCH to SWITCH.

       --use-internal-solver, --no-aspcud
	   Force use of	internal heuristics, even if an	external solver	is

       -v, --verbose
	   Be more verbose, show package sub-commands and their	output.	Repeat
	   to see more.	Repeating n times is equivalent	to setting
	   $OPAMVERBOSE	to "n".

	   Show	version	information.

       -y, --yes
	   Disable interactive mode and	answer yes to all questions that would
	   otherwise be	asked to the user. This	is equivalent to setting
	   $OPAMYES to "true".

       OPAM makes use of the environment variables listed here.	Boolean
       variables should	be set to "0", "no" of "false" to disable, "1",	"yes"
       or "true" to enable.

       OPAMCOLOR, when set to always or	never, sets a default value for	the
       --color option.

       OPAMCRITERIA specifies user preferences for dependency solving.The
       default value is
       See also	option --criteria

       OPAMCURL	can be used to select a	given 'curl' program. See OPAMFETCH
       for more	options.

       OPAMDEBUG see options `--debug' and `--debug-level'.

       OPAMDOWNLOADJOBS	sets the maximum number	of simultaneous	downloads.

       OPAMEXTERNALSOLVER see option `--solver'.

       OPAMFETCH specifies how to download files: either `wget', `curl'	or a
       custom command where variables %{url}%, %{out}%,	%{retries}%,
       %{compress}% and	%{checksum}% will be replaced. Overrides the
       'download-command' value	from the main config file.

       OPAMJOBS	sets the maximum number	of parallel workers to run.

       OPAMLOCKRETRIES sets the	number of tries	after which OPAM gives up
       acquiring its lock and fails. <=	0 means	infinite wait.

       OPAMNO answer no	to any question	asked.

       OPAMNOASPCUD see	option `--no-aspcud'.

       OPAMNOSELFUPGRADE see option `--no-self-upgrade'.

       OPAMPINKINDAUTO if set, version control systems are detected when
       pinning to a local path.

       OPAMREQUIRECHECKSUMS see	option `--require-checksums'.

       OPAMRETRY sets the number of tries before failing downloads.

       OPAMROOT	see option `--root'. This is automatically set by `opam	config
       env --root=DIR' when DIR	is non-default or OPAMROOT is already defined.

       OPAMSAFE	see option `--safe'

       OPAMSKIPVERSIONCHECKS bypasses some version checks. Unsafe, for
       compatibility testing only.

       OPAMSOLVERTIMEOUT change	the time allowance of the internal solver.

       OPAMSTATUSLINE display a	dynamic	status line showing what's currently
       going on	on the terminal. (one of one of	`always', `never' or `auto')

       OPAMSWITCH see option `--switch'. Automatically set by `opam config env

       OPAMUPGRADECRITERIA specifies user preferences for dependency solving
       when performing an upgrade. Overrides OPAMCRITERIA in upgrades if both
       are set.The default value is
       See also	option --criteria

       OPAMUSEINTERNALSOLVER see option	`--use-internal-solver'.

       OPAMUTF8	use UTF8 characters in output (one of one of `always', `never'
       or `auto'). By default `auto', which is determined from the locale).

       OPAMUTF8MSGS use	extended UTF8 characters (camels) in OPAM messages.
       Implies OPAMUTF8. This is set by	default	on OSX only.

       OPAMVAR_var overrides the contents of the variable var when
       substituting `%{var}%` strings in `opam`	files.

       OPAMVAR_package_var overrides the contents of the variable package:var
       when substituting `%{package:var}%` strings in `opam` files.

       OPAMVERBOSE see option `--verbose'.

       OPAMYES see option `--yes'.


       Thomas Gazagnaire <>
       Anil Madhavapeddy <>
       Fabrice Le Fessant <>
       Frederic	Tuong <>
       Louis Gesbert <>
       Vincent Bernardoff <>
       Guillem Rieu <>
       Roberto Di Cosmo	<>

       Check bug reports at

Opam 1.2.2						       OPAM-INSTALL(1)


Want to link to this manual page? Use this URL:

home | help