Zatulutsidwa Wild Linker 0.9.0 — cholumikizira chatsopano chapamwamba cholembedwa mu Rust. Kutulutsidwa kumeneku kwalembedwa pa GitHub. 23 May 2026 zakaPulojekitiyi yaikidwa ngati cholumikizira chofulumizitsa chitukuko chobwerezabwereza: olembawo pamapeto pake akufuna kukwaniritsa kulumikizana kowonjezereka, ngakhale kuti sikunagwiritsidwe ntchito mu mtundu wamakono. Khodiyi imagawidwa pansi pa layisensi iwiri. Apache 2.0 / MIT.
Kusintha kwakukulu mu Wild 0.9 ndi chithandizo API ya Linker Plugin, mawonekedwe omwe adayambitsidwa mu Gold linker komanso othandizidwa ndi GNU ld ndi Mold. Kwa Wild, izi zimatsegula njira yoti LTO yolumikizira pulogalamu yowonjezera — kukonza nthawi yolumikizirana kudzera pa pulogalamu yowonjezera. Opanga mapulogalamuwa amanena kuti izi ndizothandiza kwambiri pa mapulojekiti a C, C++, ndi ma mixed-code, pomwe mapulojekiti a Rust oyera nthawi zambiri amachita LTO mkati. Chithandizo cha izi chikadali ndi mavuto odziwika, ndipo kulumikizana kudzera pa pulogalamu yowonjezera kungakhale kochedwa.
Gawo lalikulu la ntchito mu 0.9 linali lokhudzana ndi kukonzekera kusamutsa Wild beyond Linux/ELF. Malingaliro enieni a ELF achotsedwa pa zinthu zongoganizira chabe, ndipo ntchito yothandizira yayamba. Mach-O и MaSambaMphamvu zimenezi sizinakonzedwe kuti zigwiritsidwe ntchito, koma zinthu zoyambirira zaonekera kale: Kusanthula kwa Mach-O, kukonza magawo ndi magawo, tebulo la zizindikiro, siginecha ya code, fat binary, komanso chithandizo choyamba cha magawo a wasm, zizindikiro, ndi kusamutsa.
Zosintha zazikulu mu Wild Linker 0.9:
Chithandizo cha mapulagini olumikizira. Thandizo la ma API a linker plugin, lomwe ndi lofunikira pa linker-plugin LTO komanso kugwirizana ndi ma GCC/GNU ld/Mold build scripts. Palinso mavuto ena okhudzana ndi ma plugin callbacks, kuphatikizapo whole-archive, ThinLTO, open file limit, ndi dead code removal panthawi ya LTO.
Kukula kwakukulu kwa chithandizo cha ma linker scripts. Malangizo a PROVIDE ndi PROVIDE_HIDDEN, ASSERT parsing ndi execution, support for MEMORY, ORIGIN, LENGTH, LOADADDR, ALIGNOF, SEGMENT_START, K ndi M suffixes in numberally literals, logical, bitwise, and unary operators, and matching by input file names activated are worked. Izi zimapangitsa Wild kukhala yogwirizana ndi ma complex link scripts omwe amapezeka nthawi zambiri mu system software ndi ma project otsika.
Kusintha kwa RISC-V, AArch64, x86-64 ndi LoongArch64. Kuwonjezedwa kwa RISC-V call relaxation, HI20 relaxation, R_RISCV_ALIGN, kuyang'ana ngati pali zowonjezeretsa za ISA zotsutsana, kusamutsa zina za AArch64, ma thunks a range-extension a AArch64, kusamalira kusamutsa zingapo za x86-64 ndi kupumula, ndi kufotokozera kwa range ndi alignment kwa LoongArch64.
Zosankha zatsopano zogwirizana. Thandizo lawonjezeredwa la --dependency-file, --auxiliary, --exclude-libs, --enable-new-dtags, --disable-new-dtags, --trace, --nmagic, --compress-debug-sections, --pack-dynamic-relocs=relr, --use-android-relr-tags, ndi mawonekedwe opanda malo -o/path.
Kupanga zinthu zoyenda mozungulira. Thandizo lowonjezera popanga zinthu zosasinthika—mafayilo apakati a zinthu omwe angathe kutenga nawo mbali pakulumikiza kwina.
Kusintha kwa magwiridwe antchito popanda kuyang'ana kwambiri pakutulutsa "mwachangu". Olembawo akunena momveka bwino kuti 0.9 sinaphatikizepo kusintha kwakukulu kwa magwiridwe antchito, koma panalibe kuwonongeka kulikonse. Kukonza kwa m'deralo kumaphatikizapo njira yachangu yofananira ndi ma script amitundu yosakhala yapadziko lonse, kuchepetsa kuchuluka kwa ntchito za atomiki, kuwerengera magawo ndi ma adilesi a chizindikiro panthawi yowunikira, komanso kuchepetsa kukonzanso magawo omwe akonzedwa kale.
Makonzedwe ambiri ogwirizana. Kukonza kasamalidwe ka zizindikiro zofooka zosafotokozedwa bwino, .ctors/.dtors, RELRO, ma script a version, SFrame, IFUNC, --version/-v, zolakwika za chizindikiro chosafotokozedwa bwino, machenjezo, kusamutsa zolakwika, .eh_frame, SHT_SYMTAB_SHNDX, kulumikizana kosasinthika kwa chinthu chosinthika, ndi zochitika zingapo ndi ma linker script.
Zolemba ndi kasamalidwe ka polojekiti. Malamulo oyendetsera ntchito, mfundo zogwiritsira ntchito LLM, zolemba za kayendetsedwe ka ntchito, matrix yothandizira ma linker scripts, malangizo ogwiritsira ntchito -fuse-ld=wild ndi GCC 16.1, ndi kukhazikitsa kudzera pa Brew zawonjezedwa. Malo osungiramo zinthu asunthidwiranso ku bungwe lina la GitHub, wild-linker.
Panthawiyi Wild mwalamulo makamaka pa Linux ndi ELF. README ya pulojekitiyi ikuthandiza mayiko x86-64, ARM64, RISC-V riscv64gc ndi thandizo loyamba LoongArch64 pa Linux; imatha kupanga ma binary osasinthika, ma static-PIE, ma executable olumikizidwa mosinthika, ndi mafayilo a .so, imagwira ntchito ndi chidziwitso cha debug, GNU jobserver, ndi ma linker script ena. Kulumikiza kowonjezereka, ma linker script ovuta kwambiri, Mach-O, ndi Windows pakadali pano amaonedwa ngati mwayi wosakwaniritsidwa kapena wosamalizidwa.
Mwachidule, Wild 0.9 imakulitsa kuyanjana ndi malo omwe alipo kale, imayamba kufalikira kupitirira ELF, ndipo imawonjezera chithandizo cha zochitika zomwe zimapangitsa kuti cholumikizira chikhale chovuta kugwiritsa ntchito mu C/C++ yayikulu ndi mapulojekiti osakanikirana. Kwa opanga Rust, Wild ikadali yosangalatsa ngati maziko olumikizirana mtsogolo, komanso kwa opanga makina, ngati mpikisano wina wofulumira wa GNU ld, LLD, ndi Mold.
Source: linux.org.ru
