DUB-BUILD(1) | The D Language Foundation | DUB-BUILD(1) |
NAME
dub-build - Builds a package (uses the main package in the current working directory by default)
SYNOPSIS
dub build [<package>[@<version-spec>]] OPTIONS...
DESCRIPTION
Builds a package (uses the main package in the current working directory by default)
OPTIONS
--temp-build
Builds the project in the temp folder if possible.
--rdmd
Use rdmd instead of directly invoking the compiler
-f, --force
Forces a recompilation even if the target is up to
date
-y, --yes
Automatic yes to prompts. Assume "yes" as
answer to all interactive prompts.
-n, --non-interactive
Don't enter interactive mode.
-d, --deep
Build all dependencies, even when main target is a static
library.
-b, --build=VALUE
Specifies the type of build to perform. Note that setting
the DFLAGS environment variable will override the build type with custom
flags. Possible names:
debug, plain, release, release-debug, release-nobounds, unittest, profile, profile-gc, docs, ddox, cov, cov-ctfe, unittest-cov, unittest-cov-ctfe, syntax and custom types
debug, plain, release, release-debug, release-nobounds, unittest, profile, profile-gc, docs, ddox, cov, cov-ctfe, unittest-cov, unittest-cov-ctfe, syntax and custom types
-c, --config=VALUE
Builds the specified configuration. Configurations can be
defined in dub.json
--override-config=VALUE
Uses the specified configuration for a certain
dependency. Can be specified multiple times. Format:
--override-config=<dependency>/<config>
--compiler=VALUE
Specifies the compiler binary to use (can be a path).
Arbitrary pre- and suffixes to the identifiers below are recognized (e.g. ldc2
or dmd-2.063) and matched to the proper compiler type:
dmd, gdc, ldc, gdmd, ldmd
dmd, gdc, ldc, gdmd, ldmd
-a, --arch=VALUE
Force a different architecture (e.g. x86 or x86_64)
-d, --debug=VALUE
Define the specified `debug` version identifier when
building - can be used multiple times
--d-version=VALUE
Define the specified `version` identifier when building -
can be used multiple times. Use sparingly, with great power comes great
responsibility! For commonly used or combined versions and versions that
dependees should be able to use, create configurations in your package.
--nodeps
Do not resolve missing dependencies before building
--build-mode=VALUE
Specifies the way the compiler and linker are invoked.
Valid values:
separate (default), allAtOnce, singleFile
separate (default), allAtOnce, singleFile
--single
Treats the package name as a filename. The file must
contain a package recipe comment.
--force-remove
Deprecated option that does nothing.
--filter-versions
[Experimental] Filter version identifiers and debug
version identifiers to improve build cache efficiency.
--combined
Tries to build the whole project in a single compiler
run.
--print-builds
Prints the list of available build types
--print-configs
Prints the list of available configurations
--print-platform
Prints the identifiers for the current build platform as
used for the build fields in dub.json
--parallel
Runs multiple compiler instances in parallel, if
possible.
COMMON OPTIONS
See dub(1)
EXIT STATUS
- 0
- DUB succeeded
- 1
- usage errors, unknown command line flags
- 2
- package not found, package failed to load, miscellaneous error
FILES
dub.sdl, dub.json
AUTHOR
Copyright (c) 1999-2024 by The D Language Foundation
ONLINE DOCUMENTATION
SEE ALSO
2024-07-07 | The D Language Foundation |