Notices: This section not yet converted to new layout. Download stats are rolling back out.



Package test results are passing.

Private CDN cached downloads available for licensed customers. Never experience 404 breakages again! Learn more...

This package was approved as a trusted package on 9/21/2018.

Qbs is a tool that helps simplify the build process for developing projects across multiple platforms.

To install Qbs, run the following command from the command line or from PowerShell:

C:\> choco install qbs

To upgrade Qbs, run the following command from the command line or from PowerShell:

C:\> choco upgrade qbs


  • tools\chocolateyinstall.ps1 Show
    $qbsVersion = '1.12.1'
    $ErrorActionPreference = 'Stop'
    $qbsBaseUrl = "$qbsVersion"
    $checksumType = 'md5'
    $checksums = @{}
    ForEach ($line in (New-Object Net.WebClient).DownloadString("$qbsBaseUrl/${checksumType}sums.txt").Split(`
            "`n", [System.StringSplitOptions]::RemoveEmptyEntries)) {
        $items = $line.Split(" ", [System.StringSplitOptions]::RemoveEmptyEntries)
        $checksums.Add($items[1], $items[0])
    $qbs32 = "qbs-windows-x86-$"
    $qbs64 = "qbs-windows-x86_64-$"
    Install-ChocolateyZipPackage `
        -PackageName 'qbs' `
        -Url "$qbsBaseUrl/$qbs32" `
        -UnzipLocation "$(Split-Path -parent $MyInvocation.MyCommand.Definition)" `
        -Url64bit "$qbsBaseUrl/$qbs64" `
        -Checksum $checksums[$qbs32] `
        -ChecksumType $checksumType `
        -Checksum64 $checksums[$qbs64] `
        -ChecksumType64 $checksumType

Virus Scan Results

In cases where actual malware is found, the packages are subject to removal. Software sometimes has false positives. Moderators do not necessarily validate the safety of the underlying software, only that a package retrieves software from the official distribution point and/or validate embedded software against official distribution point (where distribution rights allow redistribution).

Chocolatey Pro provides runtime protection from possible malware.


This package has no dependencies.

Package Maintainer(s)

Software Author(s)

  • Qt Project


© 2017 The Qt Company Ltd.


Release Notes

qbs 1.12.1

Important bugfixes

  • Lifted the restriction that the -march option cannot appear in cpp.*Flags (QBS-1018).
  • All required header files get installed now (QBS-1370).
  • Fixed rpaths not ending up on the command line under certain circumstances (QBS-1372).
  • Fixed possible crash when scanning qrc files (QBS-1375).
  • Fixed spurious re-building of .pc and .qbs module files.
  • Fixed possible crash on storing a build graph after re-resolving.
  • Fixed possible assertion on input artifacts with alwaysUpdated == false.

qbs 1.12.0


  • Added new module Exporter.qbs for creating qbs modules from products.
  • Added new module Exporter.pkgconfig for creating pkg-config metadata files.
  • Introduced the concept of system-level qbs settings.
  • Added a Makefile generator.
  • All command descriptions now contain the product name.


  • The explicitlyDependsOn property of the Rule item no longer considers
    target artifacts of product dependencies. The new property explicitlyDependsOnFromDependencies
    can be used for that purpose.
  • The excludedAuxiliaryInputs property of the Rule item has
    been renamed to excludedInputs. The old name is now deprecated.
  • Added a new property type varList.
  • Added FileInfo.suffix and FileInfo.completeSuffix.
  • The deprecated JS extensions XmlDomDocument and XmlDomElement
    have been removed. Use Xml.DomDocument and Xml.DomDocument instead.

C/C++ Support

  • For MSVC static libraries, compiler-generated PDB files are
    now tagged as debuginfo_cl to make them installable.
  • The cxxLanguageVersion property can now be set to different values in different modules,
    and the highest value will be chosen.

Qt Support

  • Amalgamation builds work properly now in the presence of "mocable" files.
  • Fixed some redundancy on the linker command line.

Other modules

  • Added support for %option outfile and %output to the lex_yacc module.
  • The vcs module now creates the header file even if no repository is present.

Autotest support

  • Added an auxiliaryInputs property to the AutotestRunner item for specifying run-time
    dependencies of test executables.
  • The AutotestRunner item now has a workingDirectory property.
    By default, the respective test executable's location is used.

Important bug fixes

  • Disabled products no longer cause their exported dependencies to get pulled into
    the importing product (QBS-1250).

qbs 1.11.1

Important bugfixes

  • Speed up run environment setup (QTCREATORBUG-20175).
  • Fix qbs command line generated by the Visual Studio project generator (QBS-1303).
  • Install all required header files when building Qbs with qmake.
  • Fix undefined behavior in the qbscore library where a reference to a temporary object was stored.

qbs 1.11.0


  • Added qbs.targetPlatform and qbs.hostPlatform properties which are scalar versions of
    qbs.targetOS and qbs.hostOS. qbs.targetPlatform is a "write-only" property that can be used
    to set the OS/platform that is being targeted, while qbs.targetOS and qbs.hostOS should
    continue to be used to read the OS/platform that is being targeted.
    qbs.targetOS is also now read-only.
  • The "run" functionality as used by the command-line command of the same name now considers
    an executable's library dependencies, that is, it adds the paths they are located in to the
    respective environment variable (e.g. PATH on Windows).


  • Modules can now declare target artifacts using the new filesAreTargets property of the
    Group item.
  • The Module.setupRunEnvironment script now has a new parameter config. Users can set it via the
    --setup-run-env-config option of the run command. The only value currently supported
    is ignore-lib-dependencies, which turns off the abovementioned injection of library
    dependencies' paths into the run environment.
  • Module.setupBuildEnvironment and Module.setupRunEnvironment now have access to the product
    and project variables. With regards to accessing module properties, these script now behave
    like rules, rather than normal properties.
  • Added the BinaryFile service for reading and writing binary data files.
  • The SubProject item now has a condition property.

C/C++ Support

  • Added property cpp.rpathOrigin which evaluates to @loader_path on Darwin and $ORIGIN
    on other Unix-like platforms.
  • Added the qbs.toolchainType property, which is a scalar version of the qbs.toolchain
    property and is used to set the current toolchain.
  • Added cpp.driverLinkerFlags for flags to be passed to the compiler driver only when linking.
  • We now properly support "c++17" as a possible value of cpp.cxxLanguageVersion.
  • The auto-detection mechanism for GCC-like compilers now considers typical mingw prefixes.

Qt Support

  • Added the Qt.scxml.generateStateMethods property to back the --statemethods option.

Command-line interface

  • Configuration names are now passed as "config:<name>".
  • Options do not have to precede property assignments anymore.
  • Referencing a non-existing product in a property override now results in an error.


  • Major overhaul of the module and item reference for improved readability.
  • Added a how-to on the topic of pre-compiled headers.
  • Added documentation for the built-in XML support.
  • Added documentation for qbs.Utilities.
  • Added documentation on how to target specific platforms.

Important bug fixes

  • Fixed some inconsistencies related to item ids (QBS-1016, QBS-1262).
  • Fixed slow project resolving on macOS (QBS-1277).
  • Fixed problems with qtquickcompiler support in Qt 5.11 (QBS-1299).
  • Fixed race conditions in multi-configuration builds (QBS-1308).


  • The InnoSetup, nsis, and wix modules' rules now have a dependency on installable artifacts
    of dependencies.
  • Introduced the ico module for creating .ico and .cur files.

qbs 1.10.1

Important bugfixes

  • Fix assertion on project loading (QBS-1275).
  • Fix crash when the "original" value is misused (QBS-1255).
  • Fix qtquickcompiler support for qml files in subdirectories (QBS-1261).
  • Fix constant rebuilding after moving an external header file (QBS-1285).
  • Fix GCC support for "bare metal" systems (QBS-1263, QBS-1265).
  • Fix using ids in Depends items (QBS-1264).
  • Fix access to module instances in dependency parameters (QBS-1253).
  • Fix race condition when creating Inno Setup, NSIS, or WiX installers.
  • Fix release builds for Android with NDK r12 and above (QBS-1256).
  • Fix parametrized dependencies in Export and Module items (QBS-1287).

qbs 1.10.0


  • Added the vcs module to provide VCS repository information.
    Git and Subversion are supported initially.
  • Added initial support for the Universal Windows Platform.
  • Improved a lot of error messages.


  • Profiles can now be defined within a project using the Profile item.
  • Groups without a prefix now inherit the one of the parent group.
  • Both the Module and the FileTagger item now have a priority property, allowing them to
    override conflicting instances.
  • It is now possible to add file tags to generated artifacts by setting the new fileTags property
    in a group that has a fileTagsFilter.
  • Added new open mode TextFile.Append.
  • Added the filePath function to the TextFile class.
  • Process and TextFile objects in rules, commands and configure scripts are now
    closed automatically after script execution.

C/C++ Support

  • Added the cpufeatures module for abstracting compiler flags related to CPU features such as SSE.
  • Added property cpp.discardUnusedData abstracting linker options that strip unneeded symbols
    or sections.
  • Added property cpp.variantSuffix for making binary names unique when multiplexing products.
  • Added property cpp.compilerDefinesByLanguage providing the compiler's pre-defined macros.


  • The deprecated apkbuilder tool is no longer used.


  • Added support for the Qt Quick compiler.
  • Added support for qmlcachegen.

Command-line interface

  • Removed some non-applicable options from a number of tools.
  • The run command can now deploy and run Android apps on devices, and deploy and run iOS and
    tvOS apps on the simulator.
  • Added new command list-products.


  • Added porting guide for qmake projects.
  • Added in-depth descriptions of all command-line tools.
  • Added "How-to" for creating modules for third-party libraries.
  • Added a man page.

qbs 1.9.1

Important bugfixes

  • Lower the response file threshold on Windows to fix build failures with mingw (QBS-1201).
  • Fix explicitly specified build variant being ignored for Darwin targets (QBS-1202).
  • Fix building for the AVR architecture (QBS-1203).

qbs 1.9.0


  • Setting module property values from the command line can now
    be done per product.
  • Introduced new properties qbs.architectures and qbs.buildVariants
    to allow product multiplexing by qbs.architecture and qbs.buildVariant,
  • When rebuilding a project, the environment, project file and property
    values are taken from the existing build graph.


  • Depends items can now be parameterized to set special module parameters
    for one particular product dependency. The new item type Parameter
    is used to declare such parameters in a module. The new item type
    Parameters is used to allow products to set default values for
    such parameters in their Export item.
  • The functions loadExtension and loadFile have been deprecated and
    will be removed in a future version. Use the require function instead.

Custom Rules and Commands

  • Artifacts corresponding to the explicitlyDependsOn property
    are now available under this name in rules and commands.
  • A rule's auxiliaryInputs and explicitlyDependsOn tags
    are now also matched against rules of dependencies, if these rules are
    creating target artifacts.
  • Rules now have a property requiresInputs. If it is false, the rule will
    be run even if no artifacts are present that match its input tags.
  • Added a new property relevantEnvironmentVariables to the Command class.
    Use it if the command runs an external tool whose behavior can be
    influenced by special environment variables.

C/C++ Support

  • Added the parameter to enable library dependencies to be
    excluded from linking.
  • When pulling in static library products, the new Depends parameter
    cpp.linkWholeArchive can now be specified to force all the library's
    objects into the target binary.
  • When pulling in library products, the new Depends parameter
    cpp.symbolLinkMode can now be specified to control how the library
    is linked into the target binary on Apple platforms: specifically,
    whether the library is linked as weak, lazy, reexported, and/or
    upward (see the ld64 man page for more information).
  • The property cpp.useCxxPrecompiledHeader, as well as the variants for the
    other languages, now defaults to true.
  • The property cpp.cxxLanguageVersion now gets mapped to MSVC's /std option,
    if applicable.


  • Added support for building macOS disk images.


  • Product multiplexing is no longer done via profiles, but via architecture,
    employing the new qbs.architectures property (see above). As a result,
    the setup-android command now sets up only one profile, rather than
    one for each architecture.
  • Added support for NDK Unified Headers.


  • Added a "How-to" section.

qbs 1.8.1

Important bug fixes:
* Qbs-specific build errors are now correctly linked
in Qt Creator's issues pane (QBS-1151).
* Fixed automatic base profile assignment for
MSVC Qt installations (QBS-1141)
* Various QNX fixes (QBS-1136, QBS-1137, QBS-1138, QBS-1139, QBS-1143).

Behavior changes:
* Users now get early error messages if they forget
the "modules", "products" or "projects" prefix
in command line property overrides such as

qbs 1.8.0

* General:
* It is no longer strictly required to provide a profile.
* Sub-second timestamp resolutions are now supported on Unix
* Added a convenient replacement for
product.moduleProperty("module", "property"), namely
* The loadFile and loadExtension functions are deprecated in
favor of the new require function, which accepts arguments of either
form accepted by the deprecated functions.
* Added new tool qbs-create-project to set up a new qbs
project from an existing source tree.
* FileTagger items can now have conditions.
* Probe items can now appear directly under a Project item.
* Cpp module:
* Added support for QNX and the QCC toolchain
* Added the cpp.useRPathLink property to control whether
to use the -rpath-link linker option.
* Provided the means to easily combine source files for the C
language family in order to support "amalgamation builds".
* Introduced cpp.treatSystemHeadersAsDependencies.
* Qt modules:
* Introduced property Qt.core.combineMocOutput.
* Introduced Qt.core.enableKeywords for simple disabling of
the "signals", "slots" and "emit" symbols.
Important bug fixes:
* Improved scalability of parallel builds on Linux by starting
Process commands via a dedicated launcher process.
Behavior changes:
* The base directory for source files changed from the product
source directory to the parent directory of the file where the files are

qbs 1.7.2

Important bug fixes:
* macOS: Fixed App Extension builds on older versions of Xcode/macOS
* Windows: Fixed handling of files on network shares
* Fixed syntax error in Qt module that occurred with static Qt builds
* Several fixes for the Visual Studio generator (QBS-1077, QBS-1100)

qbs 1.7.1

Important bug fixes:
* Fixed race condition in qmake build (QBS-1091)
* Qt Creator no longer leaves empty build directories
behind after cancelled project loading (QTCREATORBUG-17543)
* Fixed an exception crossing the API boundary

qbs 1.7.0

* Added a generator for Visual Studio projects.
* The Group item is now nestable.
* Stricter type checking for properties.
* Added support for generating qrc files.
* Added full support for the QtScxml module.
* Introduced cpp.soVersion.
* Added support for building Inno Setup packages.
* Tentative support for Visual Studio 2017.
* We now assume UTF-8 encoding for project files.
* In Scanner items, input.fileName now contains
a filename rather than the full path.
* Warnings encountered during project resolving are now stored
and re-displayed when the project is loaded.
* Documentation was improved in several places, most
notably for the Rule item.
* Support for the deprecated Transformer item was removed.
Important bug fixes:
* Long paths on Windows are handled (QBS-1068).
* Cyclic module dependencies are detected (QBS-1044).
* The libqbscore soname now includes the minor version,
so that it will not stay the same across ABI changes

qbs 1.6.1

* Added cpp.linkerWrapper property.
Important bug fixes:
* Fixed a number of bugs evaluating module properties (QBS-845, QBS-1005).
* Fixed x86_64 > x86 cross compiling (QBS-1028).
* Fixed dynamic rules with generated inputs (QBS-1029).

qbs 1.6.0

  • Added lex_yacc module.
  • Introduced property cpp.systemRunPaths.
  • Introduced the ability to check a module's version in a Depends item.
  • Introduced cpp.driverFlags, which allows specifying flags to be
    passed to the compiler driver (in any mode), but never the system linker.
  • Introduced cpp.linkerMode property to allow selection of the
    correct linker (C driver, C++ driver, or system linker) based on the
    objects being linked.
  • Added automatic escaping of arguments passed to the
    cpp.linkerFlags and cpp.platformLinkerFlags properties using the -Wl
    or -Xlinker syntaxes. To revert to the old behavior,
    Project.minimumQbsVersion can be set to a version lower than 1.6.
  • Each build configuration now requires a unique name, which
    is specified on the command line in the same place that qbs.buildVariant
    used to be specified. This allows building for multiple configurations
    with the same variant.

Version History

Version Downloads Last updated Status
Qbs 1.12.0 276 Thursday, July 19, 2018 approved
Qbs 1.11.1 405 Friday, May 4, 2018 approved
Qbs 1.11.0 1404 Wednesday, March 28, 2018 approved
Qbs 1.10.1 828 Thursday, February 15, 2018 approved
Qbs 1.10.0 205 Friday, December 8, 2017 approved
Qbs 1.9.1 1113 Thursday, October 5, 2017 approved
Qbs 1.9.0 262 Wednesday, September 6, 2017 approved
Qbs 1.8.1 182 Wednesday, July 5, 2017 approved
Qbs 1.8.0 556 Tuesday, May 30, 2017 approved
Show More

Discussion for the Qbs Package

Ground rules:

  • This discussion is only about Qbs and the Qbs package. If you have feedback for Chocolatey, please contact the google group.
  • This discussion will carry over multiple versions. If you have a comment about a particular version, please note that in your comments.
  • The maintainers of this Chocolatey Package will be notified about new comments that are posted to this Disqus thread, however, it is NOT a guarantee that you will get a response. If you do not hear back from the maintainers after posting a message below, please follow up by using the link on the left side of this page or follow this link to contact maintainers. If you still hear nothing back, please follow the package triage process.
  • Tell us what you love about the package or Qbs, or tell us what needs improvement.
  • Share your experiences with the package, or extra configuration or gotchas that you've found.
  • If you use a url, the comment will be flagged for moderation until you've been whitelisted. Disqus moderated comments are approved on a weekly schedule if not sooner. It could take between 1-5 days for your comment to show up.

comments powered by Disqus uses cookies to enhance the user experience of the site.