OPAM-INSTALL(1)

NAME

opam-install - Install a list of packages.

SYNOPSIS

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

DESCRIPTION

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 proceed.

ARGUMENTS

PACKAGES
    List of package names.

OPTIONS

-b, --keep-build-dir
    Keep the build directory. This is equivalent to setting $OPAMKEEPBUILDIR to a non-empty string.

--cudf=FILENAME
    Save the CUDF request sent to the solver to FILENAME-<n>.cudf.

-d, --build-doc
    Build the package documentation. This is equivalent to setting $OPAMBUILDDOC to a non-empty string.

--deps-only
    Install all its dependencies, but don't actually install the package.

--dry-run
    Simply call the solver without actually performing any build/install operations.

-e TAGS, --external=TAGS
    Display the external packages associated to the given tags.

--fake
    WARNING: This option is for testing purposes only! Using this option without care is the best way to corrupt your current compiler environment. When using this option OPAM will run a dry-run of the solver and then fake the build and install commands.

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

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

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

--no-checksums
    Do not verify the checksum of downloaded archives.This is equivalent to setting $OPAMNOCHECKSUMS to a non-empty string.

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

-t, --build-test
    Build and run the package unit-tests. This is equivalent to setting $OPAMBUILDTEST to a non-empty string.

--unset-root
    Mark given packages as "installed automatically".

COMMON OPTIONS

These options are common to all commands.

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

--compat-mode-1.0
    Compatibility mode with OPAM 1.0

--debug
    Print debug message on stdout. This is equivalent to setting $OPAMDEBUG to a non-empty value.

--git-version
    Print the git version if it exists and exit.

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

--no-aspcud
    Do not use the external aspcud solver, even if available.

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

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

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

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

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

-v, --verbose
    Be more verbose. This is equivalent to setting $OPAMVERBOSE to a non-empty value.

--version
    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 a non-empty string.

ENVIRONMENT VARIABLES

opam makes use of environment variables listed here.

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

OPAMCURL can be used to define an alternative for the 'curl' command-line utility to download files

FURTHER DOCUMENTATION

See https://opam.ocaml.org.

AUTHORS

Thomas Gazagnaire <thomas@gazagnaire.org>

Anil Madhavapeddy <anil@recoil.org>

Fabrice Le Fessant <Fabrice.Le_fessant@inria.fr>

Frederic Tuong <tuong@users.gforge.inria.fr>

Louis Gesbert <louis.gesbert@ocamlpro.com>

Vincent Bernardoff <vb@luminar.eu.org>

Guillem Rieu <guillem.rieu@ocamlpro.com>

BUGS

Check bug reports at https://github.com/OCamlPro/opam/issues.