皇上,还记得我吗?我就是1999年那个Linux伊甸园啊-----24小时滚动更新开源资讯,全年无休!

Qbs 1.19.0 发布

Qbs is a community-driven language-agnostic build automation system. It is fast and offers an easy-to-learn language based upon QML.

What’s new

About 151 contributions went into this release since version 1.18.0. We have selected a few items below.  Have a look into the complete changelog if you are interested in more details.

Codesign module

A new codesign module that implements code signing for Apple, Android and Windows platforms has been added.
On Apple platforms, it is now possible to sign application bundles as well as standalone executables. By default, Qbs uses Xcode specs to understand whether it should enable codesigning. For example, codesigning is now enabled for iOS (non-simulator) builds, but not enabled for macOS, matching Xcode behavior. To sign an application for the Darwin platform, one should specify the codesign.signingIdentity and codesign.provisioningProfile properties:

CppApplication {
    files: "main.m"
    codesign.enableCodeSigning: true
    codesign.provisioningProfile: "my provisioning profile name"
    codesign.signingIdentity: "Apple Development: My Team Name"
}

Unlike Xcode, Qbs does not support auto-detection of the signingIdentity based on the provisioningProfile (yet).
For more information, see the How-To section.
On the Android platform, it is possible to sign Aab and Apk packages. A typical example will look like this:

QtGuiApplication {
    files: "main.cpp"
    codesign.enableCodeSigning: true
    codesign.keystorePath: "path to the keyStore file"
    codesign.keystorePassword: "keystore password"
    codesign.keyPassword: "key password"
    codesign.keyAlias: "key alias"
}

On Windows, to sign a standalone executable using SignTool, one can specify the codesign.certificatePath and codesign.certificatePassword properties:

CppApplication {
    files: "main.m"
    codesign.enableCodeSigning: true
    codesign.certificatePath: "C:\certs\mycert.pfx"
    codesign.certificatePassword: "p@ssw0rd"
}

C/C++ Support

  • Qbs now supports multiple MSVC compiler versions installed in one Visual Studio installation as well as multiple Windows SDK versions (QBS-1498). Also, multiple compiler versions are properly detected by qbs setup-toolchains. Qbs will create a separate profile for every compiler version.
  • Added support for the HCS08 architecture to SDCC and IAR toolchains (QBS-1631QBS-1629) as well as support for the HCS12 architecture to GCC and IAR toolchains (QBS-1630QBS-1550).
  • Auto-detection of the Keil toolchains has been fixed.

Other

  • Added support for Android NDK 22.1.7171670.
  • Added support for Xcode 12.5 (QBS-1644).
  • Fixed support for Qt 6.1 (QBS-1636).

Try it

Qbs is available for download on the download page.

Please report issues in our bug tracker.

Join our Discord server for live discussions.

You can use our mailing list for questions and discussions.

The documentation and wiki are also good places to get started.

Qbs is also available from a number of package repositories (ChocolateyMacPorts, and Homebrew), and is updated on each release by the Qbs development team. It can also be installed through the native package management system on a number of Linux distributions. Please find a complete overview on repology.org.
Qbs 1.19.0 is also included in Qt Creator 4.15.0.

Contribute

If you are a happy user of Qbs, please tell others about it. But maybe you would like to contribute something. Everything that makes Qbs better is highly appreciated. Contributions may consist of reporting bugs or fixing them right away. But also new features are very welcome. Your patches will be automatically sanity-checked, built and verified on Linux, macOS and Windows by our CI bot.
Get started with instructions in the Qbs Wiki.
Thanks to everybody who made the 1.19.0 release happen:

  • Andrey Filipenkov
  • Denis Shienkov
  • Christian Kandeler
  • Jan Blackquill
  • Jake Petroules
  • Ivan Komissarov
  • Max Bespalov
  • Mitch Curtis
  • Orgad Shaneh
  • Raphaël Cotty
  • Richard Weickelt