Tso tawm Tus Txuas Qus 0.9.0 — ib qho linker tshiab uas ua haujlwm tau zoo sau ua Rust. Qhov kev tso tawm tau teev nyob rau ntawm GitHub. 23 Tej zaum 2026 xyooQhov project no yog ib qho linker rau kev ua kom cov iterative development sai dua: cov kws sau ntawv xav kom ua tiav incremental linking, txawm hais tias nws tseem tsis tau siv rau hauv qhov version tam sim no. Cov code tau muab faib raws li dual license. Apache 2.0 / MIT.
Qhov kev hloov pauv tseem ceeb hauv Wild 0.9 yog kev txhawb nqa API Plugin Linker, ib qho interface uas tau qhia hauv Gold linker thiab kuj tau txais kev txhawb nqa los ntawm GNU ld thiab Mold. Rau Wild, qhov no qhib txoj hauv kev rau linker-plugin LTO — kev txhim kho lub sijhawm txuas ntawm lub plugin txuas. Cov neeg tsim khoom hais meej tias qhov no yog qhov tseem ceeb rau C, C ++, thiab cov haujlwm sib xyaw ua ke, thaum cov haujlwm Rust ntshiab feem ntau ua LTO sab hauv. Kev txhawb nqa rau qhov feature no tseem muaj teeb meem paub, thiab kev txuas ntawm lub plugin tuaj yeem qeeb.
Ib feem tseem ceeb ntawm txoj haujlwm hauv 0.9 yog cuam tshuam nrog kev npaj rau kev hloov pauv ntawm Wild dhau mus Linux/ELF. Cov kev xav tshwj xeeb rau ELF tau raug tsiv mus rau sab nraud ntawm cov kev xav tsis meej, thiab kev ua haujlwm ntawm kev txhawb nqa tau pib lawm. Mach-O и WebAssemblyCov peev xwm no tseem tsis tau npaj rau kev siv tiag tiag, tab sis cov ntsiab lus thawj zaug twb tau tshwm sim lawm: Mach-O parsing, seem thiab ntu ua tiav, lub rooj cim, kos npe code, rog binary, nrog rau kev txhawb nqa thawj zaug rau wasm seem, cim, thiab kev tsiv chaw.
Cov kev hloov pauv tseem ceeb hauv Wild Linker 0.9:
Kev txhawb nqa rau cov plugins txuas. Ntxiv kev txhawb nqa rau linker plugin APIs, uas yog qhov tsim nyog rau linker-plugin LTO thiab kev sib raug zoo nrog qee cov GCC / GNU ld / Mold tsim cov ntawv sau. Kuj kho tau qee qhov teeb meem cuam tshuam nrog plugin callbacks, suav nrog tag nrho-archive, ThinLTO, qhov qhib cov ntaub ntawv txwv, thiab kev tshem tawm cov lej tuag thaum lub sijhawm LTO.
Kev nthuav dav loj ntawm kev txhawb nqa cov ntawv txuas. Cov lus qhia PROVIDE thiab PROVIDE_HIDDEN, ASSERT parsing thiab execution, kev txhawb nqa rau MEMORY, ORIGIN, LENGTH, LOADADDR, ALIGNOF, SEGMENT_START, K thiab M suffixes hauv numeric literals, logical, bitwise, thiab unary operators, thiab kev sib phim los ntawm cov npe ntaub ntawv input tau siv. Qhov no coj Wild ze rau kev sib raug zoo nrog cov ntawv sau txuas nyuaj uas feem ntau pom hauv software system thiab cov haujlwm qis.
Kev txhim kho rau RISC-V, AArch64, x86-64 thiab LoongArch64. Ntxiv RISC-V hu xov tooj so, HI20 so, R_RISCV_ALIGN, kuaj xyuas seb puas muaj kev sib txawv ntawm ISA extensions, ntxiv AArch64 tsiv chaw, ntau yam txuas ntxiv rau AArch64, kev tswj hwm ntawm ntau qhov x86-64 tsiv chaw nrog kev so, thiab ntau yam thiab kev sib phim meej rau LoongArch64.
Cov kev xaiv sib xws tshiab. Ntxiv kev txhawb nqa rau --dependency-file, --auxiliary, --exclude-libs, --enable-new-dtags, --disable-new-dtags, --trace, --nmagic, --compress-debug-sections, --pack-dynamic-relocs=relr, --use-android-relr-tags, thiab daim ntawv tsis muaj chaw -o/path.
Kev tsim cov khoom txav mus los zoo li qub. Ntxiv kev txhawb nqa rau kev tsim cov khoom hloov chaw zoo li qub - cov ntaub ntawv khoom nruab nrab uas tseem tuaj yeem koom nrog kev sib txuas ntxiv.
Kev txhim kho kev ua tau zoo yam tsis tsom mus rau qhov kev tso tawm "ceev". Cov kws sau ntawv tau sau tseg meej meej tias 0.9 tsis suav nrog kev txhim kho kev ua tau zoo loj, tab sis tsis muaj kev puas tsuaj. Kev ua kom zoo hauv zos suav nrog txoj hauv kev ceev rau cov neeg sib tw tsis yog thoob ntiaj teb hauv cov ntawv sau version, txo qis tus lej ntawm cov haujlwm atomic, kev suav sib luag ntawm ntu thiab cov cim chaw nyob thaum lub sijhawm so, thiab txo qis kev ua tiav ntawm cov ntu uas twb tau daws lawm.
Muaj ntau yam kev kho kom haum rau qhov sib xws. Kho qhov kev tswj hwm ntawm cov cim tsis muaj zog uas tsis tau txhais, .ctors / .dtors, RELRO, cov ntawv sau version, SFrame, IFUNC, --version / -v, cov cim tsis tau txhais yuam kev, cov lus ceeb toom, debug relocations, .eh_frame, SHT_SYMTAB_SHNDX, kev sib txuas zoo li qub ntawm cov khoom dynamic, thiab ntau qhov xwm txheej nrog cov ntawv sau linker.
Kev tswj cov ntaub ntawv thiab kev tswj xyuas qhov project. Ib daim ntawv qhia txog kev coj cwj pwm, txoj cai siv LLM, cov ntaub ntawv tswj hwm, ib daim ntawv qhia txhawb nqa linker scripts, cov lus qhia rau kev siv -fuse-ld=wild nrog GCC 16.1, thiab kev teeb tsa ntawm Brew tau ntxiv lawm. Lub chaw khaws ntaub ntawv kuj tau raug tsiv mus rau ib lub koom haum GitHub sib cais, wild-linker.
Thaum lub sijhawm no Tsiaj qus raug cai tsom mus rau Linux thiab ELF. Qhov project README cov lus txhawb nqa x86-64, ARM64, RISC-V riscv64gc thiab kev txhawb nqa thawj zaug LoongArch64 rau Linux; tuaj yeem tsim cov static binaries, static-PIE, dynamically linked executables, thiab .so cov ntaub ntawv, ua haujlwm nrog debug cov ntaub ntawv, GNU jobserver, thiab qee cov linker scripts. Incremental linking, ntau cov linker scripts nyuaj dua, Mach-O, thiab Windows tam sim no raug cais ua cov cib fim tsis tau ua tiav lossis tsis tau ua tiav.
Hauv kev siv tiag tiag, Wild 0.9 nthuav dav kev sib raug zoo nrog lub ecosystem tsim uas twb muaj lawm, pib nthuav dav dhau ELF, thiab ntxiv kev txhawb nqa rau cov xwm txheej uas ua rau tus txuas nyuaj rau siv hauv C / C ++ loj thiab cov haujlwm sib xyaw. Rau cov neeg tsim khoom Rust, Wild tseem yog qhov nthuav ua lub hauv paus rau kev sib txuas ntxiv yav tom ntej, thiab rau cov neeg tsim khoom system, ua lwm tus neeg sib tw ceev rau GNU ld, LLD, thiab Mold.
Tau qhov twg los: linux.org.ru ua
