Gefin út Villtur tengill 0.9.0 — nýr afkastamikill tengill skrifaður í Rust. Útgáfan er skráð á GitHub. 23 maí 2026 áriVerkefnið er staðsett sem tengill til að flýta fyrir endurtekinni þróun: höfundarnir vilja að lokum ná fram stigvaxandi tengingu, þó það sé ekki enn innleitt í núverandi útgáfu. Kóðinn er dreift undir tvöföldu leyfi. Apache 2.0 / MIT.
Helsta breytingin í Wild 0.9 er stuðningur Tengiforritaskil (API), viðmót sem kynnt var til sögunnar í Gold-tenglinum og einnig stutt af GNU ld og Mold. Fyrir Wild opnar þetta leiðina að tengill-viðbót LTO — hagræðing á tengitíma með tengiviðbót. Forritararnir taka sérstaklega fram að þetta sé fyrst og fremst gagnlegt fyrir C, C++ og blandaða kóða verkefni, en hrein Rust verkefni framkvæma yfirleitt LTO innbyrðis. Stuðningur við þennan eiginleika hefur enn þekkt vandamál og tenging í gegnum viðbótina getur verið hæg.
Verulegur hluti vinnunnar í 0.9 tengdist undirbúningi fyrir flutning Wild lengra en ... Linux/ELF. ELF-sértæk rökfræði hefur verið færð út fyrir abstrakt hugtök og vinna við stuðning er hafin. Mach-O и WebAssemblyÞessir eiginleikar eru ekki enn tilbúnir til notkunar í reynd, en fyrstu þættirnir hafa þegar komið fram: Mach-O greining, úrvinnsla á köflum og hluta, táknatafla, kóðaundirskrift, fitubinær kóði, sem og upphaflegur stuðningur við wasm-köflur, tákn og tilfærslur.
Helstu breytingar í Wild Linker 0.9:
Stuðningur við tenglaviðbætur. Bætt var við stuðningi við tengilviðbótarforritaskil (API), sem er nauðsynlegt fyrir tengilviðbótar-LTO og samhæfni við sum GCC/GNU ld/Mold byggingarforskriftir. Einnig voru lagfærð vandamál tengd bakköllum viðbóta, þar á meðal heilskjalasafn, ThinLTO, takmörkun á opnum skrám og fjarlægingu dauðs kóða við LTO.
Mikil útvíkkun á stuðningi við tenglaskriftir. Tilskipanirnar PROVIDE og PROVIDE_HIDDEN, ASSERT greining og keyrsla, stuðningur við viðskeyti MEMORY, ORIGIN, LENGTH, LOADADDR, ALIGNOF, SEGMENT_START, K og M í tölulegum bókstöfum, rökfræðilegum, bitavísum og einhliða virkum, og pörun eftir inntaksskráarheitum eru innleiddar. Þetta færir Wild nær samhæfni við flókin tengiskriftur sem finnast oft í kerfishugbúnaði og lágstigsverkefnum.
Úrbætur fyrir RISC-V, AArch64, x86-64 og LoongArch64. Bætt var við slökun á RISC-V köllum, slökun á HI20, R_RISCV_ALIGN, athugun á árekstri í ISA viðbætur, viðbótar AArch64 flutningum, sviðsframlengingarþunkum fyrir AArch64, meðhöndlun fjölda x86-64 flutninga með slökunum og skýringum á sviðum og röðun fyrir LoongArch64.
Nýir samhæfingarmöguleikar. Bætt við stuðningi fyrir --dependency-file, --auxiliary, --exclude-libs, --enable-new-dtags, --disable-new-dtags, --trace, --nmagic, --compress-debug-sections, --pack-dynamic-relocs=relr, --use-android-relr-tags og bilslausa formið -o/path.
Myndun kyrrstæðra hreyfanlegra hluta. Bætt við stuðningi við að búa til kyrrstæðar, færanlegar skrár — millistig hlutaskrár sem geta samt tekið þátt í frekari tengingu.
Afkastabætingar án þess að einblína á „hraða“ útgáfu. Höfundarnir taka sérstaklega fram að útgáfa 0.9 hafi ekki falið í sér neinar verulegar afköstabætur, en það hafi heldur ekki orðið nein lækkun á afköstum. Staðbundnar hagræðingar fela í sér hraðari leið fyrir óalþjóðlegar samsvaranir í útgáfuskriftum, fækkun atómaðgerða, samsíða útreikning á hluta- og táknföngum við slökunarskönnun og minni endurvinnslu á þegar leystum hlutum.
Margar lagfæringar á samhæfni. Lagfærð meðhöndlun veikra óskilgreindra tákna, .ctors/.dtors, RELRO, útgáfuforskrifta, SFrame, IFUNC, --version/-v, villur í óskilgreindum táknum, viðvaranir, villuleitartilfærslur, .eh_frame, SHT_SYMTAB_SHNDX, kyrrstæð tenging á breytilegum hlutum og fjölda atburðarása með tengiforskriftum.
Skjalavinnsla og verkefnastjórnun. Siðareglur, notkunarstefna fyrir LLM, stjórnunarskjöl, stuðningsmatrix fyrir tengiskriftur, leiðbeiningar um notkun -fuse-ld=wild með GCC 16.1 og uppsetningu í gegnum Brew hafa verið bætt við. Geymslan hefur einnig verið færð í sérstaka GitHub stofnun, wild-linker.
Á því augnabliki, Wild opinberlega fyrst og fremst einblínt á Linux og ELF. README skjalið í verkefninu styður x86-64, ARM64, RISC-V riscv64gc og upphafsstuðningur LoongArch64 á Linux; getur smíðað kyrrstæðar tvíundarskrár, kyrrstæða-PIE, virktengdar keyrsluskrár og .so skrár, vinnur með villuleitarupplýsingar, GNU vinnuþjón og sumar tengiforrit. Stigvaxandi tengingar, flóknari tengiforrit, Mach-O og Windows eru nú flokkuð sem óinnleyst eða ókláruð tækifæri.
Í reynd eykur Wild 0.9 samhæfni við núverandi vistkerfi byggingar, byrjar að stækka út fyrir ELF og bætir við stuðningi við aðstæður sem gera tengilinn erfiðan í notkun í stórum C/C++ og blönduðum verkefnum. Fyrir Rust forritara er Wild enn áhugaverður sem mögulegur grunnur fyrir framtíðar stigvaxandi tengingar og fyrir kerfisforritara sem annar hraður keppinautur við GNU ld, LLD og Mold.
Heimild: linux.org.ru
