------ cabal --help ------ This program is the command line interface to the Haskell Cabal infrastructure. See http://www.haskell.org/cabal/ for more information. Usage: cabal COMMAND [FLAGS] or: cabal [GLOBAL FLAGS] Global flags: -h --help Show this help text -V --version Print version information --numeric-version Print just the version number Commands: install Installs a list of packages. update Updates list of known packages list List packages matching a search string. info Display detailed information about a particular package. fetch Downloads packages for later installation. unpack Unpacks packages for user inspection. check Check the package for common mistakes sdist Generate a source distribution file (.tar.gz). upload Uploads source packages to Hackage report Upload build reports to a remote server. init Interactively create a .cabal file. configure Prepare to build the package. build Make this package ready for installation. copy Copy the files into the install locations. haddock Generate Haddock HTML documentation. clean Clean up after a build. hscolour Generate HsColour colourised code, in HTML format. register Register this package with the compiler. test Run the test suite, if any (configure with UserHooks). upgrade (command disabled, use install instead) help Help about commands For more information about a command use: cabal COMMAND --help To install Cabal packages from hackage use: cabal install foo [--dry-run] Occasionally you need to update the list of available packages: cabal update You can edit the cabal configuration file to set defaults: /home/gv/.cabal/config ------ cabal install --help ------ Usage: cabal install [FLAGS] or: cabal install [PACKAGES] Flags for install: -h --help Show this help text -v --verbose[=n] Control verbosity (n is 0--3, default verbosity level is 1) --builddir=DIR The directory where Cabal puts generated build files (default dist) -g --ghc compile with GHC --nhc98 compile with NHC --jhc compile with JHC --lhc compile with LHC --hugs compile with Hugs --uhc compile with UHC -w --with-compiler=PATH give the path to a particular compiler --with-hc-pkg=PATH give the path to the package tool --prefix=DIR bake this prefix in preparation of installation --bindir=DIR installation directory for executables --libdir=DIR installation directory for libraries --libsubdir=DIR subdirectory of libdir in which libs are installed --libexecdir=DIR installation directory for program executables --datadir=DIR installation directory for read-only data --datasubdir=DIR subdirectory of datadir in which data files are installed --docdir=DIR installation directory for documentation --htmldir=DIR installation directory for HTML documentation --haddockdir=DIR installation directory for haddock interfaces -b --scratchdir=DIR directory to receive the built package (hugs-only) --program-prefix=PREFIX prefix to be applied to installed executables --program-suffix=SUFFIX suffix to be applied to installed executables --enable-library-vanilla Enable Vanilla libraries --disable-library-vanilla Disable Vanilla libraries -p --enable-library-profiling Enable Library profiling --disable-library-profiling Disable Library profiling --enable-shared Enable Shared library --disable-shared Disable Shared library --enable-executable-profiling Enable Executable profiling --disable-executable-profiling Disable Executable profiling -O --enable-optimization[=n] Build with optimization (n is 0--2, default is 1) --disable-optimization Build without optimization --enable-library-for-ghci Enable compile library for use with GHCi --disable-library-for-ghci Disable compile library for use with GHCi --enable-split-objs Enable split library into smaller objects to reduce binary sizes (GHC 6.6+) --disable-split-objs Disable split library into smaller objects to reduce binary sizes (GHC 6.6+) --enable-executable-stripping Enable strip executables upon installation to reduce binary sizes --disable-executable-stripping Disable strip executables upon installation to reduce binary sizes --configure-option=OPT Extra option for configure --user Enable doing a per-user installation --global Disable doing a per-user installation --package-db=PATH Use a specific package database (to satisfy dependencies and register in) -f --flags=FLAGS Force values for the given flags in Cabal conditionals in the .cabal file. E.g., --flags="debug -usebytestrings" forces the flag "debug" to true and "usebytestrings" to false. --extra-include-dirs=PATH A list of directories to search for header files --extra-lib-dirs=PATH A list of directories to search for external libraries --constraint=DEPENDENCY A list of additional constraints on the dependencies. --enable-tests Enable dependency checking and compilation for test suites listed in the package description file. --disable-tests Disable dependency checking and compilation for test suites listed in the package description file. --with-PROG=PATH give the path to PROG --PROG-options=OPTS give extra options to PROG --PROG-option=OPT give an extra option to PROG (no need to quote options containing spaces) --cabal-lib-version=VERSION Select which version of the Cabal lib to use to build packages (useful for testing). --preference=DEPENDENCY Specify preferences (soft constraints) on the version of a package --enable-documentation Enable building of documentation --disable-documentation Disable building of documentation --doc-index-file=TEMPLATE A central index of haddock API documentation (template cannot use $pkgid) --dry-run Do not install anything, only print what would be installed. --reinstall Install even if it means installing the same version again. --upgrade-dependencies Pick the latest version for all dependencies, rather than trying to pick an installed version. --only-dependencies Install only the dependencies necessary to build the given packages --root-cmd=COMMAND Command used to gain root privileges, when installing with --global. --symlink-bindir=DIR Add symlinks to installed executables into this directory. --build-summary=TEMPLATE Save build summaries to file (name template can use $pkgid, $compiler, $os, $arch) --build-log=TEMPLATE Log all builds to file (name template can use $pkgid, $compiler, $os, $arch) --remote-build-reporting=LEVEL Generate build reports to send to a remote server (none, anonymous or detailed). --one-shot Do not record the packages in the world file. The flags --with-PROG and --PROG-option(s) can be used with the following programs: alex ar c2hs cpphs ffihugs gcc ghc ghc-pkg greencard haddock happy hmake hsc2hs hscolour hugs jhc ld lhc lhc-pkg nhc98 pkg-config ranlib strip tar uhc Examples: cabal install Package in the current directory cabal install foo Package from the hackage server cabal install foo-1.0 Specific version of a package cabal install 'foo < 2' Constrained package version