Qbs derleme araçlarının son sürümü yayınlandı

Qt Şirketi yayınlanan montaj araçları Qb 1.13 (Qt Yapı Paketi). Bu, Qt Şirketi tarafından üretilen Qbs'nin en son sürümüdür. Daha önce olanları hatırlayalım Alınan Qbs geliştirmeyi durdurma kararı. Qbs, qmake'in yerine geçmek üzere geliştirildi, ancak sonuçta uzun vadede Qt için ana yapı sistemi olarak CMake'in kullanılmasına karar verildi.

Yakın gelecekte, kaderi bağımsız geliştiricilerin söz konusu montaj sistemine olan ilgisine bağlı olacak olan Qbs'nin topluluk tarafından geliştirilmesine devam etmek için bağımsız bir projenin oluşturulması bekleniyor. Qt Company, Qbs'yi tanıtmak için ek yatırım ihtiyacı ve yüksek maliyetler nedeniyle Qbs üzerinde çalışmayı bırakıyor.

Qbs'yi oluşturmak için bir bağımlılık olarak Qt'nin gerekli olduğunu hatırlayalım, ancak Qbs'nin kendisi herhangi bir projenin montajını organize etmek için tasarlanmıştır. Qbs, proje derleme komut dosyalarını tanımlamak için QML dilinin basitleştirilmiş bir sürümünü kullanır; bu, harici modülleri bağlayabilen, JavaScript işlevlerini kullanabilen ve özel derleme kuralları oluşturabilen oldukça esnek derleme kuralları tanımlamanıza olanak tanır.
Qbs, makefile oluşturmaz ve derleyicilerin ve bağlayıcıların başlatılmasını bağımsız olarak kontrol ederek tüm bağımlılıkların ayrıntılı bir grafiğine dayalı olarak oluşturma sürecini optimize eder. Projedeki yapı ve bağımlılıklar hakkında ilk verilerin varlığı, birden fazla iş parçacığında işlemlerin yürütülmesini etkili bir şekilde paralelleştirmenize olanak tanır.

Qbs 1.13'daki önemli yenilikler:

  • Qbs modülleri için kullanılan bağımlılık işleme mekanizmasının aynısını kullanarak projelerde pkg-config modüllerini kullanma yeteneği eklendi. Örneğin, sisteminizde pkg-config tabanlı OpenSSL oluşturmak için bir paket varsa, bunu bir Qbs projesinde kullanmak için 'Depends { name: "openssl" }';
  • Mevcut Qt modüllerinin otomatik tespiti uygulandı. Geliştiricilerin artık setup-qt komutunu kullanarak modül yollarına sahip bir profil oluşturmasına gerek yok; bağımlılıklarda belirtilen tüm Qt modülleri otomatik olarak yapılandırılacaktır;
  • Bireysel komutlar düzeyinde paralel olarak çalışan montaj görevlerinin sayısını kontrol etmek için araçlar eklendi. Örneğin, bağlantı büyük bir G/Ç yükü oluşturur ve önemli miktarda RAM tüketir, dolayısıyla bağlayıcı, derleyiciden farklı başlangıç ​​ayarları gerektirir. Artık “qbs —job-limits linker:2,compiler:8” komutu kullanılarak ayrı ayarlar yapılabilir;
  • Komut dosyası dilinde değişiklikler yapıldı. Artık kurallar, çıktı için bir saplama dosyası belirtmeden tanımlanabilir ve proje dosyalarının başında “import qbs” direktifinin kullanılmasına gerek yoktur. Yürütülebilir dosyaların daha rahat kurulumu için Application, DynamicLibrary ve StaticLibrary öğelerine yeni install ve installDir özellikleri eklendi;
  • Bağlayıcı komut dosyalarının yinelemeli taranması için destek eklendi
    GNU bağlayıcı;

  • C++ için cpp.linkerVariant özelliği, ld.gold, ld.bfd veya lld bağlayıcıların kullanımını zorlamak için uygulanmıştır;
  • Qt, büyük Qt kaynakları oluşturmak için Qt.core.enableBigResources özelliğini sunuyor
  • Eski AndroidApk öğesi yerine genel Uygulama türünün kullanılması önerilmektedir;
  • Otomatik teste dayalı testler oluşturmak için bir modül eklendi;
  • Qmake'de QMAKE_SUBSTITUTES'a benzer yeteneklere sahip texttemplate modülü eklendi;
  • C++ ve Objective-C için Protokol Tamponları formatına yönelik başlangıç ​​desteği eklendi.

Kaynak: opennet.ru

Yorum ekle