Tu silẹ Ìsopọ̀ Wild 0.9.0 — ìjápọ̀ tuntun tó ní agbára gíga tí a kọ sínú Rust. Ìtújáde náà wà lórí GitHub. Oṣu Karun ọjọ 23, 2026A gbé iṣẹ́ náà kalẹ̀ gẹ́gẹ́ bí ìjápọ̀ fún ìdàgbàsókè onípele-ẹ̀ẹ̀kan: àwọn òǹkọ̀wé náà nígbẹ̀yìn gbẹ́yín fẹ́ láti ṣàṣeyọrí ìsopọ̀ onípele-ẹ̀ẹ̀kan, bó tilẹ̀ jẹ́ pé a kò tí ì ṣe é nínú ẹ̀yà tuntun yìí. A pín kóòdù náà lábẹ́ ìwé àṣẹ méjì. Apache 2.0 / MIT.
Iyipada akọkọ ni Wild 0.9 ni atilẹyin API Afikún Linker, ìfọwọ́sowọ́pọ̀ kan tí a ṣe àgbékalẹ̀ nínú ìjápọ̀ Gold tí GNU ld àti Mold sì tún ṣe àtìlẹ́yìn rẹ̀. Fún Wild, èyí ṣí ọ̀nà sílẹ̀ láti LTO asopọ-afikun — àwọn ìṣàtúnṣe àkókò ìjápọ̀ nípasẹ̀ ohun èlò ìjápọ̀. Àwọn olùgbékalẹ̀ sọ ní pàtó pé èyí wúlò fún àwọn iṣẹ́ C, C++, àti àwọn iṣẹ́ àdàpọ̀-kódì, nígbàtí àwọn iṣẹ́ àdánidá Rust sábà máa ń ṣe LTO nínú. Àtìlẹ́yìn fún ẹ̀yà ara yìí ṣì ní àwọn ìṣòro tí a mọ̀, àti sísopọ̀ nípasẹ̀ ohun èlò ìbánisọ̀rọ̀ náà lè lọ́ra.
Apá pàtàkì kan nínú iṣẹ́ náà ní 0.9 ní í ṣe pẹ̀lú àwọn ìpalẹ̀mọ́ fún ìgbeyàwó Wild ju bẹ́ẹ̀ lọ Linux/ELF. A ti gbe ilana ELF-kan pato kuro ni awọn ilana abstracts, iṣẹ lori atilẹyin ti bẹrẹ. Mach-O и Apejọ AyelujaraÀwọn agbára wọ̀nyí kò tíì ṣetán fún lílò tó wúlò, ṣùgbọ́n àwọn ohun àkọ́kọ́ ti farahàn: ìṣàfihàn Mach-O, ìṣiṣẹ́ ìpín àti ìpín, tábìlì àmì, ìfọwọ́sowọ́pọ̀ koodu, fat binary, àti àtìlẹ́yìn àkọ́kọ́ fún àwọn ìpín wasm, àwọn àmì, àti àwọn ìṣípòpadà.
Àwọn àyípadà pàtàkì nínú Wild Linker 0.9:
Atilẹyin fun awọn afikun asopọ. A fi àtìlẹ́yìn kún un fún àwọn API tí a fi ń lo ìjápọ̀, èyí tí ó ṣe pàtàkì fún LTO tí a fi ń lo ìjápọ̀ àti ìbáramu pẹ̀lú àwọn ìwé àkọsílẹ̀ GCC/GNU ld/Mold kan. Àwọn ìṣòro kan tí ó ní í ṣe pẹ̀lú àwọn ìpèpadà plugin tún wà, títí bí gbogbo ibi ìpamọ́, ThinLTO, ààlà fáìlì tí ó ṣí sílẹ̀, àti yíyọ koodu tí kò sí nígbà LTO.
Ilọsiwaju pataki ti atilẹyin awọn iwe afọwọkọ asopọ. Àwọn ìtọ́ni PROVIDE àti PROVIDE_HIDDEN, ìtúpalẹ̀ àti ìṣiṣẹ́ ASSERT, ìtìlẹ́yìn fún MEMORY, ORIGIN, LENGTH, LOADADDR, ALIGNOF, SEGMENT_START, K àti M nínú àwọn nọ́mbà lítírésì, logical, bitwise, àti unary operators ni a ṣe àgbékalẹ̀ rẹ̀, àti ìbáramu nípasẹ̀ orúkọ fáìlì ìfilọ́lẹ̀ ni a ń lò. Èyí mú kí Wild sún mọ́ ìbáramu pẹ̀lú àwọn ìwé àfọwọ́kọ ìjápọ̀ tí ó díjú tí a sábà máa ń rí nínú sọ́fítíwètì ètò àti àwọn iṣẹ́ àgbékalẹ̀ ìpele kékeré.
Àwọn àtúnṣe fún RISC-V, AArch64, x86-64 àti LoongArch64. A fi ìtura ìpè RISC-V kún un, ìtura HI20, R_RISCV_ALIGN, ṣíṣàyẹ̀wò fún àwọn ìfàsẹ́yìn ISA tí ó takora, àwọn ìyípadà AArch64 afikún, àwọn ìfàsẹ́yìn ìfàsẹ́yìn ìpele fún AArch64, mímú àwọn ìyípadà x86-64 pẹ̀lú àwọn ìtura, àti àwọn àlàyé ìpele àti ìtòlẹ́sẹẹsẹ fún LoongArch64.
Awọn aṣayan ibamu tuntun. Àtìlẹ́yìn tí a fi kún un fún --dependency-file, --auxiliary, --exclude-libs, --enable-new-dtags, --disable-new-dtags, --trace, --nmagic, --compress-debug-sections, --pack-dynamic-relocs=relr, --use-android-relr-tags, àti fọ́ọ̀mù tí kò ní àyè -o/path.
Ìṣẹ̀dá àwọn ohun tí ń gbéra láìsí ìyípadà. A fi àtìlẹ́yìn kún un fún ṣíṣẹ̀dá àwọn ohun tí a lè gbé padà sípò tí kò dúró—àwọn fáìlì ohun tí ó wà láàárín tí ó ṣì lè kópa nínú ìsopọ̀ síwájú sí i.
Awọn ilọsiwaju iṣẹ laisi idojukọ lori idasilẹ "yara". Àwọn òǹkọ̀wé náà ṣe àkíyèsí kedere pé 0.9 kò ní àwọn àtúnṣe pàtàkì kankan nínú iṣẹ́ wọn, ṣùgbọ́n kò sí ìbàjẹ́ kankan pẹ̀lú. Àwọn àtúnṣe agbègbè ní ipa ọ̀nà kíákíá fún àwọn tí kì í ṣe ti àgbáyé nínú àwọn ìwé àfọwọ́kọ ẹ̀yà, ìdínkù nínú iye àwọn iṣẹ́ atomiki, ìṣirò parallel ti àwọn àdírẹ́sì apá àti àmì nígbà tí a bá ń ṣe àyẹ̀wò ìsinmi, àti ìdínkù ìṣiṣẹ́ àwọn apá tí a ti yanjú tẹ́lẹ̀.
Ọpọlọpọ awọn atunṣe ibamu. Mimu awọn aami alailopin ti ko ni alaye ti a ti ṣe atunṣe, .ctors/.dtors, RELRO, awọn iwe afọwọkọ ẹya, SFrame, IFUNC, --version/-v, awọn aṣiṣe aami alailopin, awọn ikilọ, awọn gbigbe aṣiṣe aṣiṣe, .eh_frame, SHT_SYMTAB_SHNDX, asopọ aimi ti ohun ti nṣiṣe lọwọ, ati ọpọlọpọ awọn ipo pẹlu awọn iwe afọwọkọ asopọ.
Àkọsílẹ̀ àti ìṣàkóso iṣẹ́ àgbékalẹ̀. A ti fi ìlànà ìwà rere, ìlànà lílo LLM, ìwé ìṣàkóso, àtìlẹ́yìn àwọn ìwé àfọwọ́kọ linker, ìlànà fún lílo -fuse-ld=wild pẹ̀lú GCC 16.1, àti fífi sori ẹrọ nípasẹ̀ Brew kún un. A tún ti gbé ibi ìpamọ́ náà lọ sí àjọ GitHub mìíràn, wild-linker.
Ni akoko yi Wild ifowosi dojukọ akọkọ lori Linux àti ELF. Àwọn ìpínlẹ̀ README ti iṣẹ́ náà ń ṣètìlẹ́yìn x86-64, ARM64, RISC-V riscv64gc ati atilẹyin akọkọ LoongArch64 on Linux; le kọ awọn binaries static, static-PIE, awọn dynamically linked executables, ati awọn faili .so, ṣiṣẹ pẹlu alaye aṣiṣe, GNU jobserver, ati diẹ ninu awọn iwe afọwọkọ linker. Windows ni a kà sí àwọn àǹfààní tí a kò tíì ṣe tàbí tí a kò tíì parí lọ́wọ́lọ́wọ́.
Ní ti ìṣe, Wild 0.9 fẹ̀ sí ìbáramu pẹ̀lú ètò ìkọ́lé tó wà, ó bẹ̀rẹ̀ sí í fẹ̀ sí i ju ELF lọ, ó sì fi kún ìtìlẹ́yìn fún àwọn ìṣẹ̀lẹ̀ tó mú kí ìjápọ̀ náà ṣòro láti lò nínú àwọn iṣẹ́ ńláńlá C/C++ àti àwọn iṣẹ́ àdàpọ̀. Fún àwọn olùgbékalẹ̀ Rust, Wild ṣì jẹ́ ohun tó wúni lórí gẹ́gẹ́ bí ìpìlẹ̀ tó ṣeé ṣe fún ìsopọ̀ onípele ọjọ́ iwájú, àti fún àwọn olùgbékalẹ̀ ètò, gẹ́gẹ́ bí olùdíje kíákíá mìíràn sí GNU ld, LLD, àti Mold.
orisun: linux.org.ru
