DUB-RUN(1)

πŸ’… DUB-RUN(1) β€” the dub run glow-up

okay bestie, welcome to dub-run, brought to you by The D Language Foundation ✨ this is the manual page for the default command, and yes it's giving main character energy.


πŸŽ€ NAME

dub-run β€” builds and runs a package (this is the default command, iykyk)


πŸ¦‹ SYNOPSIS

dub run [<package>[@<version-spec>]] OPTIONS...  [-- <application arguments...>]

literally just drop your package in there and go, fr fr πŸ’…


🌸 DESCRIPTION

Builds and runs a package. If you don't pass a package, it lowkey just uses the main package in the current working directory by default. iconic behavior honestly 🫢


✨ OPTIONS ✨

  • --temp-build β€” builds the project in the temp folder if possible. cozy little temp-home build 🏠
  • --rdmd β€” uses rdmd instead of directly invoking the compiler. different vibe, same energy.
  • -f, --force β€” forces a recompilation even if the target is already up to date. no cap, it rebuilds anyway πŸ”₯
  • -y, --yes β€” automatic yes to prompts. assumes "yes" as the answer to all interactive prompts. she's agreeable like that πŸ’–
  • -n, --non-interactive β€” don't enter interactive mode. bye bestie, no questions today πŸ™ˆ
  • --deep β€” build all dependencies, even when the main target is a static library. deep dive, literally.
  • --dest=VALUE β€” base directory in which output artifacts will be placed. where the glow-up products live πŸ’…
  • -b, --build=VALUE β€” specifies the type of build to perform. heads up: setting the DFLAGS environment variable will override the build type with custom flags, so watch out for that lil plot twist 😭 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
  • -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 βš™οΈ
  • -a, --arch=VALUE β€” force a different architecture (e.g. x86 or x86_64). architecture is a choice πŸ’β€β™€οΈ
  • -d, --debug=VALUE β€” define the specified debug version identifier when building β€” can be used multiple times. stack 'em up 🧚
  • --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 instead. periodt.
  • --nodeps β€” do not resolve missing dependencies before building. living dangerously, love that for you πŸ’€
  • --build-mode=VALUE β€” specifies the way the compiler and linker are invoked. valid values: separate (default), allAtOnce, singleFile πŸŒ€
  • --single β€” treats the package name as a filename. the file must contain a package recipe comment. one file, one dream ⭐
  • --force-remove β€” deprecated option that does nothing. she's literally just standing there. respectfully, ignore her πŸ™ˆ
  • --filter-versions β€” [Experimental] filter version identifiers and debug version identifiers to improve build cache efficiency. science is happening πŸ§ͺ
  • --combined β€” tries to build the whole project in a single compiler run. one big group hug 🫢
  • --print-builds β€” prints the list of available build types. show me the menu πŸ‘‘
  • --print-configs β€” prints the list of available configurations. same energy, different list.
  • --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. multitasking queen πŸ‘‘

πŸ’œ COMMON OPTIONS

see dub(1) β€” the mothership has the deets πŸ›Έ


πŸ’€ EXIT STATUS

  • 0 β€” DUB succeeded. we ate and left no crumbs πŸ”₯
  • 1 β€” usage errors, unknown command line flags 🚩
  • 2 β€” package not found, package failed to load, miscellaneous error 😭

πŸ“ FILES

dub.sdl, dub.json β€” your recipe files, keep them close πŸ’–


🧚 AUTHOR

Copyright (c) 1999-2026 by The D Language Foundation. legends only πŸ‘‘


🌟 ONLINE DOCUMENTATION

http://code.dlang.org/docs/commandline ⟨⟩ β€” go read, bestie πŸ“š


πŸ‘‘ SEE ALSO

dub(1), dub-build(1), dub-test(1), rdmd(1) β€” the whole friend group fr fr 🫢


aaaand that's the page! brought to you by The D Language Foundation, dated 2026-08-16, version vibes intact πŸ’…βœ¨ mwah, go build something iconic πŸŽ€

πŸ“¦ where this page comes from