berdan Girêdana Kovî 0.9.0 — girêdanek nû ya performansa bilind ku bi Rust hatiye nivîsandin. Guhertoya wê li ser GitHub-ê hatiye navnîş kirin. 23 Gulan 2026Proje wekî girêdanek ji bo lezandina pêşveçûna dubarekirî tê bicihkirin: nivîskar di dawiyê de dixwazin girêdana zêdekirî bi dest bixin, her çend ew hîn di guhertoya heyî de nehatiye bicîh kirin. Kod di bin lîsansek dualî de tê belavkirin. Apache 2.0 / MIT.
Guhertina sereke di Wild 0.9 de piştgirî ye API-ya Pêveka Girêdanê, navrûyek ku di girêdana Gold de hatî destnîşan kirin û her weha ji hêla GNU ld û Mold ve jî tê piştgirî kirin. Ji bo Wild, ev rê vedike ku LTO-ya pêveka girêdanê — çêtirkirina dema girêdanê bi rêya pêvekek girêdanê. Pêşdebir bi taybetî dibêjin ku ev bi giranî ji bo projeyên C, C++, û kodên tevlihev bikêr e, lê projeyên Rust ên saf bi gelemperî LTO-yê di hundurê xwe de pêk tînin. Piştgiriya vê taybetmendiyê hîn jî pirsgirêkên naskirî hene, û girêdana bi rêya pêvekê dikare hêdî be.
Beşek girîng ji karê di 0.9 de bi amadekariyên ji bo veguhestina Wild li derveyî welêt ve girêdayî bû. Linux/ELF. Mantîqa taybetî ya ELF-ê ji abstraksiyonan derketiye û xebata li ser piştgiriyê dest pê kiriye. Mach-O и Tevlêbûn TevneEv şiyan hîn ji bo karanîna pratîkî amade nînin, lê hêmanên pêşîn berê xwe dane holê: parskirina Mach-O, pêvajoya beş û perçeyan, tabloya sembolan, îmzeya kodê, binaryaya qelew, û her weha piştgiriya destpêkê ji bo beş, sembol û veguheztinên wasm.
Guhertinên sereke di Wild Linker 0.9 de:
Piştgiriya ji bo pêvekên girêdanê. Piştgiriya ji bo API-yên pêveka girêdanê hate zêdekirin, ku ji bo LTO-ya pêveka girêdanê û lihevhatina bi hin skrîptên avakirina GCC/GNU ld/Mold re pêdivî ye. Her wiha hin pirsgirêkên têkildarî vegerandina pêvekan jî hatin çareserkirin, di nav de tevahiya arşîvê, ThinLTO, sînorê pelê vekirî, û rakirina koda mirî di dema LTO de.
Berfirehkirineke mezin a piştgiriya skrîptên girêdanê. Rêwerzên PROVIDE û PROVIDE_HIDDEN, parsing û bicîhanîna ASSERT, piştgiriya ji bo paşgirên MEMORY, ORIGIN, LENGTH, LOADADDR, ALIGNOF, SEGMENT_START, K û M di tîpên hejmarî de, operatorên mantiqî, bitwise, û yekane, û hevahengkirina bi navên pelên têketinê têne bicîh kirin. Ev Wild nêzîktirî hevahengiya bi skrîptên girêdanên tevlihev dike ku pir caran di nermalava pergalê û projeyên asta nizm de têne dîtin.
Pêşketinên ji bo RISC-V, AArch64, x86-64 û LoongArch64. Rizgarkirina banga RISC-V, rizgarkirina HI20, R_RISCV_ALIGN, kontrolkirina dirêjkirinên ISA yên nakok, veguhastinên AArch64 yên zêde, kêmasiyên dirêjkirina rêzê ji bo AArch64, birêvebirina hejmarek veguhastinên x86-64 bi rizgarkirinan, û zelalkirinên rêz û hevrêzkirinê ji bo LoongArch64 zêde kir.
Vebijarkên nû yên lihevhatinê. Piştgiriya ji bo --dependency-file, --auxiliary, --exclude-libs, --enable-new-dtags, --disable-new-dtags, --trace, --nmagic, --compress-debug-sections, --pack-dynamic-relocs=relr, --use-android-relr-tags, û forma bê cîh -o/path hate zêdekirin.
Çêkirina tiştên statîk-livdar. Piştgiriya ji bo afirandina pelên veguhezbar ên statîk hate zêdekirin - pelên tiştên navîn ên ku hîn jî dikarin di girêdana bêtir de beşdar bibin.
Baştirkirinên performansê bêyî balkişandina ser berdanek "lez". Nivîskar bi eşkere destnîşan dikin ku 0.9 ti başkirinên mezin ên performansê tê de neaniye, lê xirabûn jî çênebûye. Optimîzasyonên herêmî rêyek bilez ji bo hevberên ne-cîhanî di skrîptên guhertoyê de, kêmkirina hejmara operasyonên atomî, hesabkirina paralel a navnîşanên beş û sembolan di dema skanên rihetbûnê de, û kêmkirina ji nû ve hilberandina beşên ku berê çareser bûne vedihewîne.
Gelek rastkirinên lihevhatinê. Pirsgirêkên bi sembolên qels ên nepenî, .ctors/.dtors, RELRO, skrîptên guhertoyê, SFrame, IFUNC, --version/-v, xeletiyên sembolên nepenî, hişyarî, veguheztinên debug, .eh_frame, SHT_SYMTAB_SHNDX, girêdana statîk a objeya dînamîk, û hejmarek senaryoyên bi skrîptên girêdanê ve hatine çareserkirin.
Belgekirin û rêveberiya projeyê. Rêziknameyeke rêftariyê, siyaseta bikaranîna LLM, belgeyên rêveberiyê, matrîseke piştgiriya skrîptên girêdanê, rêwerzên ji bo karanîna -fuse-ld=wild bi GCC 16.1 re, û sazkirin bi rêya Brew hatine zêdekirin. Her wiha depo bo rêxistineke cuda ya GitHub, wild-linker, hatiye veguhastin.
Heta niha Bejî bi fermî bi giranî li ser Linux û ELF. README ya projeyê piştgirî dide x86-64, ARM64, RISC-V riscv64gc û piştgiriya destpêkê LoongArch64 li ser Linux; dikare pelên duqatî yên statîk, static-PIE, pelên bicîhkirî yên bi dînamîk ve girêdayî, û pelên .so ava bike, bi agahdariya debug, servera kar a GNU, û hin skrîptên girêdanê re dixebite. Girêdana zêdekirî, skrîptên girêdanê yên tevlihevtir, Mach-O, û Windows niha wekî derfetên ne pêkhatî an neqediyayî têne dabeş kirin.
Di warê pratîkî de, Wild 0.9 lihevhatina bi ekosîstema avakirina heyî re berfireh dike, dest bi berfirehbûna ji ELF-ê wêdetir dike, û piştgirî ji bo senaryoyên ku karanîna girêdanker di projeyên mezin ên C/C++ û tevlihev de dijwar dike zêde dike. Ji bo pêşdebirên Rust, Wild wekî bingehek potansiyel ji bo girêdana zêde ya pêşerojê balkêş dimîne, û ji bo pêşdebirên pergalê, wekî reqîbek din a bilez a GNU ld, LLD, û Mold.
Source: linux.org.ru
