概要
- Zigのmainブランチにおける2025年の主な変更点まとめ
- 自己ホストx86バックエンドのデフォルト化やクロスコンパイル対応強化
- ビルドシステム解説動画やウェブサイトのZineアップデート
- UBSanエラーメッセージの改善やメモリアロケータの最適化
- 主要な開発進捗、今後の展望、寄付の呼びかけ
2025年 Zig Devlog 主な更新
2025年6月8日: 自己ホストx86バックエンドがDebugモードでデフォルト化
- x86_64ターゲット時、 Zig独自のx86バックエンド をデフォルト利用
- WindowsではCOFFリンカ作業が残るため未適用
- 1987個の動作テスト に合格し、LLVMバックエンド(1980個)より堅牢性向上
- LLVMと比較し コンパイル速度が大幅向上
- hello.zigのビルド時間: 918ms(LLVM) → 275ms(Zig x86)
- Zigコンパイラ自体のビルド時間: 75秒 → 20秒
- コード生成の完全並列化やインクリメンタルビルドの安定化も進行中
- aarch64バックエンドへの展開も準備中
- 最新masterビルドで体験可能、 Zig Software Foundation への寄付呼びかけ
2025年6月6日: Zigビルドシステム入門動画公開
- Loris Croによる YouTube解説動画 公開
- Zigビルドシステムの基本操作やモジュール作成・インポート方法を解説
- 今後もシリーズとして動画追加予定
- 動画リンク: https://youtu.be/jy7w_7JZYyw
2025年5月20日: FreeBSD・NetBSDクロスコンパイル対応
- PR #23835, #23913により FreeBSD 14.0.0+、NetBSD 10.1+ 向けバイナリ生成が可能に
- 任意のマシンからzig cc/zig buildでクロスコンパイル実現
- libc等のシンボル情報を abilistsファイル に集約し、クロスリンク時に利用
- crt0コードは最新リリースからインポートしパッチ適用
- FreeBSD/NetBSDの システム・libcヘッダ も同梱
- OpenBSD/Dragonfly BSD/SerenityOS/Android/Fuchsia libc対応も検討中
- バグ報告・協力者募集
2025年4月9日: ウェブサイトがZine 0.10.0にアップデート
- 公式Zigサイトが スタンドアロンZine でビルドされるように変更
- ZineがZigビルドスクリプトから実行ファイルへ進化
- zine initで サンプルサイトやdevlog機能 を即時体験可能
- サイト各エントリーに 日付表示 を追加
- 不具合報告はリグレッションのみ受付
2025年3月3日: 0.14.0リリースタグ進捗
- 0.14.0リリース 間近
- リリースノート作成中、CI開始予定
- 0.14.1や0.15.0での追加改善も計画中
2025年2月24日: UBSanエラーメッセージ改善
- David Rubinによる UBSanランタイム統合
- zig ccでCをコンパイル時、 -fsanitize=undefined がデフォルト有効
- 以前はSIGILL(不正命令)のみで原因特定困難
- 新ランタイムで 詳細なエラー内容と発生箇所 が出力されデバッグ容易化
- C++のvptr/ライフタイム検出やassume_aligned等の属性位置表示は未対応(今後の課題)
2025年2月7日: No-Libc ZigがGlibc Zigを上回る性能に
- Andrew Kelleyによる デバッグアロケータの最適化
- ページサイズの ランタイム検出 対応でAsahi Linux動作も実現
- メモリ初期化・解放・データ構造の効率化
- スロット数計算を コンパイル時に事前計算 し、実行時の高速化を実現
今後の展望・協力のお願い
- 自己ホストバックエンドの品質向上 と他アーキテクチャへの展開
- BSD系や新OSへのクロスコンパイル対応拡大
- コミュニティからのバグ報告・パッチ貢献・寄付 を広く募集