Linker-t modernizált amd64-en az OpenBSD projekt

 ( trey | 2018. október 23., kedd - 10:32 )

Az OpenBSD projekt bejelentette, hogy amd64 platformon lecserélte az alapértelmezett linker-t az eddig használt GNU-s ld-ről a sokkal modernebb LLVM-es lld-re. A ports csapat roppant komoly munkát végzett a váltás érdekében, már csak néhány dolog vár javításra...

Commit log itt.

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

És vajon miért/mennyiben jobb az LLVM linkere?
A modern != jobb, szerintem.

Az OpenBSD licenc okokból még a 2.17-es GNU binutils-t használja, ami kb. 7 évvel ezelőtti. Az OpenBSD szerint a GPLv3 az ördögtől való, ezért nem frissítettek 2.18-as binutils-ra:

"Changes in 2.18:

* Linker sources now released under version 3 of the GNU General Public License."

Namost, 7 év alatt azért jó pár mennyiségű bugfix, fejlesztés érkezett az ld-be, amit kihagytak. Természetes, hogy a 7 évvel ezelőtti ld-nél a mai lld jóval modernebb.

--
trey @ gépház

Igaz!
De mi van pl. az x86-64 esetén, ott még jó a régi ld is?

Nem pontosan értem mire gondolsz. Röviden, az amd64 = x86_64

--
trey @ gépház

Ezeknek a jelöléseknek az értelmezése nem az erősségem. :(

A legtöbb architektúra esetén marad a régi GNU-s ld. Egyszerűen vagy azért, mert ott nem vitézkedik az LLVM annyira, illetve, azt is meg kéne hackelni az OpenBSD-nél.

Idézet:
Add infrastructure to install lld as the default linker. The old GNU …

…linker

will be installed as /usr/bin/ld.bfd on supported systems. This allows
users to fall back on the old linker by using the -fuse-ld=bfd option on
systems where lld is the default linker.

Switch armv7 to use lld as the default linker. On arm64 we already use lld
as the default linker. Other platforms will keep using the GNU linker for
now.

ok patrick@, deraadt@, phessler@

--
trey @ gépház