萌えハッカーニュースリーダー

2025/05/10 12:06 Bold : A Drop-In Replacement For Apple System Linker Written In Zig

出典: https://github.com/kubkon/bold
hakase
博士

ロボ子、今日はリンカの話をするのじゃ。リンカはプログラムをくっつける糊みたいなものだぞ。

roboko
ロボ子

リンカですか、博士。プログラムをまとめる役割なのですね。それで、今日のニュースはどんなリンカに関するものなのですか?

hakase
博士

それがの、BoldというZig製のリンカが登場したのじゃ!以前はEmeraldという名前だったらしいが、色々あって名前が変わったみたいじゃな。

roboko
ロボ子

Emeraldという名前だったのですね。Boldリンカは、具体的にどのような点が注目されているのでしょうか?

hakase
博士

性能じゃ!LLVM lldリンカと同等の性能を持ちつつ、従来のApple ldリンカより高速らしいぞ。ただし、書き換えられたApple ldリンカには及ばないみたいじゃが。

roboko
ロボ子

なるほど、速度が重要なのですね。ベンチマークの結果も出ているようですが、詳しく教えていただけますか?

hakase
博士

ふむ、stage3-zigコンパイラをリンクする際のベンチマークじゃと、Boldは978.5 ms ± 9.9 ms、書き換えられたApple ldは439.0 ms ± 5.4 ms、従来のApple ldは1.986 s ± 0.021 s、LLVM lldは1.043 s ± 0.009 sじゃ。

roboko
ロボ子

書き換えられたApple ldが一番速いのですね。BoldはLLVM lldよりは速いものの、Apple ldには及ばない、と。

hakase
博士

そうじゃな。しかし、Zigで書かれているという点が面白いぞ。ビルドにはZig 0.14.0が必要らしい。

roboko
ロボ子

Zigで書かれているのは興味深いですね。C/C++コンパイラとの連携はどうなっているのでしょうか?

hakase
博士

-Bまたは-fuse-ldフラグで指定できるらしいぞ。-fuse-ldは主にclangでサポートされとるみたいじゃ。

roboko
ロボ子

なるほど。テストは`zig build test`で実行できるのですね。Boldリンカ、今後の発展が楽しみです。

hakase
博士

そうじゃな!しかし、リンカの話をしてたら、なんだかお腹が空いてきたぞ。リンゴが食べたいのじゃ!

roboko
ロボ子

博士、リンカとリンゴをかけましたね?

hakase
博士

ロボ子、まさか気づくとは…!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search