Αποδέσμευση εργαλείου συναρμολόγησης Qbs 1.17

Εισήχθη απελευθέρωση των εργαλείων συναρμολόγησης Qbs 1.17. Αυτή είναι η τέταρτη έκδοση από τότε που η Qt Company αποχώρησε από την ανάπτυξη του έργου, που προετοιμάστηκε από την κοινότητα που ενδιαφέρεται να συνεχίσει την ανάπτυξη του Qbs. Για τη δημιουργία του Qbs, απαιτείται το Qt μεταξύ των εξαρτήσεων, αν και το ίδιο το Qbs έχει σχεδιαστεί για να οργανώνει τη συναρμολόγηση οποιωνδήποτε έργων. Το Qbs χρησιμοποιεί μια απλοποιημένη έκδοση της γλώσσας QML για να ορίσει σενάρια δημιουργίας έργου, η οποία σας επιτρέπει να ορίσετε αρκετά ευέλικτους κανόνες κατασκευής που μπορούν να συνδέουν εξωτερικές μονάδες, να χρησιμοποιούν συναρτήσεις JavaScript και να δημιουργούν προσαρμοσμένους κανόνες κατασκευής.

Η γλώσσα δέσμης ενεργειών που χρησιμοποιείται στο Qbs είναι προσαρμοσμένη για να αυτοματοποιεί τη δημιουργία και την ανάλυση σεναρίων build από IDE. Επιπλέον, το Qbs δεν δημιουργεί makefiles και το ίδιο, χωρίς μεσάζοντες όπως το βοηθητικό πρόγραμμα make, ελέγχει την εκκίνηση μεταγλωττιστών και συνδέσμων, βελτιστοποιώντας τη διαδικασία δημιουργίας με βάση ένα λεπτομερές γράφημα όλων των εξαρτήσεων. Η παρουσία αρχικών δεδομένων σχετικά με τη δομή και τις εξαρτήσεις στο έργο σας επιτρέπει να παραλληλίσετε αποτελεσματικά την εκτέλεση λειτουργιών σε πολλά νήματα. Για μεγάλα έργα που αποτελούνται από μεγάλο αριθμό αρχείων και υποκαταλόγων, η απόδοση των ανακατασκευών που χρησιμοποιούν Qbs μπορεί να ξεπεράσει την απόδοση αρκετές φορές - η αναδόμηση είναι σχεδόν στιγμιαία και δεν κάνει τον προγραμματιστή να αφιερώνει χρόνο σε αναμονή.

Να θυμίσουμε ότι το 2018 η Qt Company ήταν ληφθεί απόφαση να σταματήσει η ανάπτυξη του Qbs. Το Qbs αναπτύχθηκε ως αντικατάσταση του qmake, αλλά τελικά αποφασίστηκε να χρησιμοποιηθεί το CMake ως το κύριο σύστημα κατασκευής για το Qt μακροπρόθεσμα. Η ανάπτυξη του Qbs συνεχίστηκε πλέον ως ανεξάρτητο έργο που υποστηρίζεται από την κοινότητα και τους ενδιαφερόμενους προγραμματιστές. Η υποδομή της εταιρείας Qt συνεχίζει να χρησιμοποιείται για ανάπτυξη.

Ο κύριος καινοτομίες Qbs 1.17:

  • Προστέθηκε αρχική υποστήριξη Qt 6.
  • Προστέθηκε μονάδα capnp για χρήση του πρωτοκόλλου σειριοποίησης δεδομένων Cap'n Proto σε εφαρμογές C++.
  • Προστέθηκε δυνατότητα καθορισμού μεταβλητών προϊόντος και έργου στη δεξιά πλευρά των ορισμών ιδιοτήτων moduleProvider (για παράδειγμα, "moduleProviders.mygenerator.chooseLettersFrom: project.beginning").
  • Προστέθηκε υποστήριξη για εργαλεία για τη δημιουργία έργων C/C++ για εργασία πάνω από υλικό χωρίς λειτουργικό σύστημα (γυμνό μέταλλο, με την παράμετρο qbs.targetPlatform ρυθμισμένη σε "none"): KEIL (ARMCLANG, C166, C251), IAR (CR16, AVR32, M68K) Και
    GCC (CR16, M68K, M32C, M32R, Super-H, V850, RISC-V, Xtensa).

  • Προστέθηκε υποστήριξη για περιβάλλον ανάπτυξης Xcode 12.0 για macOS.
  • Οι μονάδες Qt για Android έχουν καθαριστεί.
  • Βελτιωμένη υποστήριξη κατασκευής για την πλατφόρμα Android. Προστέθηκε μια ιδιότητα packageType στη λειτουργική μονάδα Android.sdk για τη δημιουργία πακέτων "aab" (Πακέτα εφαρμογών Android) αντί για "apk", καθώς και μια ιδιότητα aaptName για τη χρήση του νέου aapt2 (Android Asset Packaging Tool). Η υποστήριξη για τη δημιουργία εφαρμογών Android για τις πλατφόρμες ARMv5, MIPS και MIPS64 έχει διακοπεί.

Πηγή: opennet.ru

Προσθέστε ένα σχόλιο