Rilis final alat pembangunan Qbs telah diterbitkan

Perusahaan Qt опубликовала alat perakitan Qb 1.13 (Qt Bangun Suite). Ini adalah rilis terbaru Qbs yang diproduksi oleh Perusahaan Qt. Mari kita ingat apa yang terjadi sebelumnya diterima keputusan untuk berhenti mengembangkan Qbs. Qbs dikembangkan sebagai pengganti qmake, namun pada akhirnya diputuskan untuk menggunakan CMake sebagai sistem build utama untuk Qt dalam jangka panjang.

Dalam waktu dekat, diharapkan akan tercipta proyek independen untuk melanjutkan pengembangan Qbs oleh masyarakat, yang nasibnya akan bergantung pada minat terhadap sistem perakitan yang dimaksud dari pengembang independen. Perusahaan Qt berhenti mengerjakan Qbs karena kebutuhan investasi tambahan dan tingginya biaya untuk mempromosikan Qbs.

Ingatlah bahwa untuk membangun Qbs, Qt diperlukan sebagai ketergantungan, meskipun Qbs sendiri dirancang untuk mengatur perakitan proyek apa pun. Qbs menggunakan versi bahasa QML yang disederhanakan untuk mendefinisikan skrip pembangunan proyek, yang memungkinkan Anda menentukan aturan pembangunan yang cukup fleksibel yang dapat menghubungkan modul eksternal, menggunakan fungsi JavaScript, dan membuat aturan pembangunan khusus.
Qbs tidak menghasilkan makefile dan secara independen mengontrol peluncuran kompiler dan linker, mengoptimalkan proses pembangunan berdasarkan grafik terperinci dari semua dependensi. Kehadiran data awal tentang struktur dan ketergantungan dalam proyek memungkinkan Anda untuk secara efektif memparalelkan pelaksanaan operasi di beberapa thread.

Inovasi utama di Qbs 1.13:

  • Menambahkan kemampuan untuk menggunakan modul pkg-config dalam proyek menggunakan mekanisme pemrosesan ketergantungan yang sama dengan yang digunakan untuk modul Qbs. Misalnya, jika sistem Anda memiliki paket untuk membangun OpenSSL berdasarkan pkg-config, untuk menggunakannya dalam proyek Qbs, cukup tambahkan 'Depends { name: "openssl" }';
  • Menerapkan deteksi otomatis modul Qt yang tersedia. Pengembang tidak perlu lagi membuat profil dengan jalur modul menggunakan perintah setup-qt; semua modul Qt yang ditentukan dalam dependensi akan dikonfigurasi secara otomatis;
  • Menambahkan alat untuk mengontrol jumlah tugas perakitan yang berjalan secara paralel pada tingkat perintah individual. Misalnya, penautan menciptakan beban I/O yang besar dan menghabiskan sejumlah besar RAM, sehingga linker memerlukan pengaturan startup yang berbeda dari kompiler. Pengaturan terpisah sekarang dapat diatur menggunakan perintah “qbs —job-limits linker:2,compiler:8”;
  • Perubahan telah dilakukan pada bahasa skrip. Aturan sekarang dapat ditentukan tanpa menentukan file rintisan untuk keluaran, dan tidak perlu menggunakan arahan “import qbs” di awal file proyek. Properti install dan installDir baru telah ditambahkan ke elemen Aplikasi, DynamicLibrary dan StaticLibrary untuk instalasi file yang dapat dieksekusi dengan lebih nyaman;
  • Menambahkan dukungan untuk pemindaian skrip linker secara rekursif
    penghubung GNU;

  • Untuk C++, properti cpp.linkerVariant telah diterapkan untuk memaksa penggunaan linker ld.gold, ld.bfd, atau lld;
  • Qt memperkenalkan properti Qt.core.enableBigResources untuk membuat sumber daya Qt yang besar
  • Alih-alih elemen AndroidApk yang sudah ketinggalan zaman, diusulkan untuk menggunakan tipe Aplikasi generik;
  • Menambahkan modul untuk membuat tes berdasarkan autotest;
  • Menambahkan modul texttemplate dengan kemampuan yang mirip dengan QMAKE_SUBSTITUTES di qmake;
  • Menambahkan dukungan awal untuk format Protocol Buffers untuk C++ dan Objective-C.

Sumber: opennet.ru

Tambah komentar