Meson ialah alat perisian untuk mengautomasikan pembinaan perisian. Ia adalah percuma dan sumber terbuka yang ditulis dalam Python.
Pelancaran versi baharu sistem binaan Meson 1.0.0, yang disertakan dengan hujah baharu, serta kestabilan untuk menyusun projek dalam Rust, antara lain.
Bagi mereka yang tidak tahu tentang Meson, mereka harus tahu itu sistem binaan ini digunakan untuk menyusun projek nama besar seperti Pelayan X.Org, Mesa, Lighttpd, systemd, GStreamer, Wayland, GNOME dan GTK.
Matlamat pembangunan utama Meson adalah untuk menyediakan proses kompilasi berkelajuan tinggi yang digabungkan dengan kemudahan dan kemudahan penggunaan. Daripada melakukan, binaan menggunakan Ninja Toolkit secara lalai, tetapi backend lain seperti xcode dan VisualStudio juga boleh digunakan.
Sistem ini mempunyai pengendali pergantungan merentas platform terbina dalam yang membolehkan anda menggunakan Meson untuk membuat pakej untuk pengedaran. Peraturan kompilasi dinyatakan dalam bahasa khusus domain yang dipermudahkan, ia boleh dibaca dan difahami dengan baik oleh pengguna (mengikut idea pengarang, pembangun harus menghabiskan masa minimum menulis peraturan).
Se menyokong kompilasi silang dan kompilasi pada Linux, Illumos/Solaris, FreeBSD, NetBSD, DragonFly BSD, Haiku, macOS dan Windows menggunakan GCC, Clang, Visual Studio dan penyusun lain.
Ia adalah mungkin untuk membina projek dalam beberapa bahasa pengaturcaraan, termasuk C, C++, Fortran, Java dan Rust. Mod binaan tambahan disokong, di mana hanya komponen yang berkaitan secara langsung dengan perubahan yang dibuat sejak binaan terakhir dibina semula.
Meson boleh digunakan untuk menjana binaan berulang, yang menjalankan binaan dalam persekitaran yang berbeza menghasilkan boleh laku yang sama sepenuhnya.
Kebaharuan utama Meson 1.0
Dalam keluaran baharu Meson 1.0 ini diserlahkan bahawa Modul untuk membina projek dalam bahasa Rust telah diisytiharkan stabil. Modul ini digunakan dalam projek Mesa untuk membina komponen yang ditulis dalam Rust.
Disokong oleh kebanyakan fungsi semakan pengkompil, pilihan awalan melaksanakan keupayaan untuk mengendalikan tatasusunan selain rentetan.
Satu lagi perubahan yang menonjol daripada pelancaran ini ialah mereka mencadangkan pengendali baharu "dalam" dan "tidak masuk" untuk menentukan kejadian subrentetan dalam rentetan, Sama seperti semakan yang tersedia sebelum ini untuk kemunculan elemen dalam tatasusunan atau kamus.
Di samping itu, kita juga boleh menemuinya pilihan tambahan «peringkat amaran=semuanya” untuk mencetuskan output semua amaran pengkompil yang tersedia (Clang dan MSVC menggunakan -Weverything dan /Wall, dan GCC termasuk amaran berasingan, kira-kira sepadan dengan mod -Weverything clang.)
Ia juga perlu diperhatikan bahawa a hujah baharu “–workdir” untuk membolehkan anda mengatasi direktori kerja. Contohnya, untuk menggunakan direktori semasa dan bukannya direktori kerja.
Kaedah rust.bindgen melaksanakan keupayaan untuk memproses hujah "dependencies" untuk menghantar laluan ke dependensi untuk diproses oleh pengkompil dan fungsi java.generate_native_headers telah ditamatkan dan dinamakan semula kepada java.native_headers untuk memadankan gaya penamaan fungsi umum Meson.
Sebaliknya, ia juga disebut bahawa sekarang apabila menyusun silang, persekitaran pembangun menetapkan semua pembolehubah persekitaran untuk mesin HOST. Sekarang juga menetapkan QEMU_LD_PREFIX dan nilai sys_root bagi fail silang jika harta itu ditetapkan. Ini bermakna bahawa boleh laku tersusun silang selalunya boleh dijalankan secara telus pada mesin binaan, contohnya apabila menyusun silang kepada linux aarch64 daripada linux x86_64.
Akhir sekali, jika anda berminat untuk mengetahui lebih lanjut mengenainya, anda boleh merujuk butiran dalam pautan berikut.
Bagaimana untuk memasang Meson pada Linux?
Bagi mereka yang berminat untuk memasang sistem binaan ini pada sistem mereka, mereka boleh melakukannya dengan mengikuti arahan yang kami kongsikan di bawah.
Mereka harus tahu bahawa Meson tersedia di PyPi, jadi ia boleh dipasang dengan arahan:
pip3 install meson
Sebagai nota, anda harus tahu bahawa arahan tepat untuk menaip untuk memasang pip boleh berbeza-beza antara sistem, jadi anda disyorkan untuk menggunakan versi Python 3 pip.