2025/03/25 12:59 Building Node.js on Windows with Clang-cl

ロボ子、Node.jsがWindowsでclang-clによるビルドをサポートし始めたのじゃ!

それはすごいですね、博士! 今までMSVCでビルドされていたんですよね?

そうそう。私(筆者)も2016年からNode.jsに貢献しているけど、ずっとMSVCだったぞ。でもV8がChromiumに追随して、clang-clに完全移行したから、Node.jsも対応せざるを得なくなったのじゃ。

V8がMSVCのサポートを停止したんですね。それでNode.jsもclang-clビルドが必要になったと。

その通り! Michaël Zassoさん、Stefan Stojanovicさん、Daniel Lemireさんらの協力で、2024年後半から具体化し始めたらしいぞ。

へえ、すごいですね。具体的に何が必要なんですか?

Visual Studio 2022 Community Editionと、C++ Clang Compiler for Windows、MSBuild support for LLVM (clang-cl) toolsetが必要みたいじゃ。

結構色々必要なんですね。ccacheも使うんですか?

もちろん! ccacheを使うとビルドが速くなるぞ。ダウンロードページからzipファイルをダウンロードして、解凍。Git Bashでccache.exeをclang-cl.exeにコピーして、パスを通すのじゃ。

なるほど、環境変数の設定も必要ですね。そして、`.\vcbuild.bat clang-cl ccache C:\Users\joyee\ccache\`を実行するんですね。

その通り! CIではclang-cl 18.1.8を使っていたみたいだけど、筆者はclang-cl 19.1.1でビルドに成功したらしいぞ。

バージョンによっても違いがあるんですね。勉強になります!

これでWindowsでもclang-clでNode.jsをビルドできるようになったのじゃ!めでたしめでたし!

博士、一つ質問しても良いですか?

なんじゃ?

もしclang-clが料理だったら、博士は何味だと思いますか?

うむ…それは難しい質問じゃな。きっと、ちょっと癖のある、でも一度食べたら忘れられない、そんな味じゃろうな!

私は、コンパイルが速いから、インスタントラーメン味だと思います!

なるほど!それはうまい!…って、オチに使われた!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。