マジセミドライブ

ウェビナー関連のニュースやITサービス&ツールの最新情報を随時配信します。

ツール・サービス紹介

2023.04.12

【OSS情報】大規模ビルドツール「Buck2」

【OSS情報】大規模ビルドツール「Buck2」

オープンソース大規模ビルドツール「Buck2」の
「概要」「特徴」「機能」「オフィシャルサイト情報」について紹介しています。

【OSS情報】大規模ビルドツール「Buck2」

【OSS情報】大規模ビルドツール「Buck2」

Buck2の「概要」

「Buck2」(バック2)とは、Meta(Facebook)が提供する大規模ビルドツールです。
「高速」「高信頼性」「拡張性」を特徴としており、多くのプラットフォームでさまざまな言語をサポートしています。

ポイント

・多言語対応 :「C++」「Python」「Java」「Rust」など
・「コアルール」と「言語固有ルール」の完全な分離
・ビルド依存関係を分析
・リモート実行
・並列処理
・仮想ファイルシステム統合
・従来版「Buck」より約2倍の高速化
・大規模プロジェクト向けに最適化

Buck2の「特徴」

ビルドツール「Buck」の後継

■「Buck」とは
・Meta(Facebook)が開発したビルドツール
・有能なビルドシステム
・Meta(Facebook)の一部で使用されている

■「Buck2」とは
・「Buck1」の最良の部分を維持することを目的とした書き直し
・他ビルドシステムからのアイデアも取り入れている :「Bazel」「Pants」「Shake」「Tup」など
・「Buck1」の2倍の速さでビルドを完了

■Buck2をBuck1と比較した場合の利点
→buck2.build →docs →benefits

クエリ可能なターゲット

・ビルドは「BUCKファイルで指定された一連のターゲット」として定義
・他のターゲットに依存
・ターゲットグラフを照会できる
・潜在的な影響を理解できる :それらが互いにどのように関連しているか?

高信頼性ビルド

・Buck2ルールはデフォルトで密閉
・依存関係の欠落はエラーとなる
・これらの制限は「ユーザー作成BUCKファイル」と「言語規則」の両方に適用

フェーズ並列化

・ユーザーが要求した結果をもたらす単一グラフ内の一連の依存関係のみ
・異なるフェーズを並列化
・変化を正確に追跡できる

Pythonライク言語「Starlark」

・「Starlark」=決定論的なPythonライク言語
・すべてのルールは Starlarkで記述
・ターゲットをリテラルとして定義する
・高度な操作や共有を可能にする
・ルール反復処理が大幅に高速化

Buck2の「機能」

リモート実行機能

・一連のリモートサーバにアクションを送信してビルド実行
・並列処理が大幅に向上

複数プログラミング言語構成機能

■1つのビルドに多数の異なる言語を含めることができる
・C++
・Python
・Java
・Go
・Rust
・Erlang
・OCaml

ファイル監視機能

・ファイル変更モニタリングツール「Watchman」と統合
・どのファイルが変更されたかを検出

仮想ファイルシステム「Eden」統合機能

・優れたパフォーマンスが得られる
・通常のファイルシステムでも問題なく動作する

Buck2の「オフィシャルサイト情報」

オフィシャルサイト

→buck2.build

GitHubページ

→github.com →facebook →buck2

主要開発元

Buck2は「Meta(Facebook)」が中心となり開発が進められています。

→opensource.fb.com

ライセンス情報

Buck2のライセンスは「MIT License」+「Apache License 2.0」です。

詳細について、こちらを参照ください。

→github.com →facebook →buck2 →LICENSE-MIT

→github.com →facebook →buck2 →LICENSE-APACHE

コンパイル環境

Buck2はRustで記述されているため、コンパイルにはRust公式インストーラー「rustup」が必要です。

インストール

→buck2.build →docs →getting_started

【お知らせ】ITセミナー「マジセミ」のご紹介

「 マジセミ 」では、日々、多くのIT関連セミナーを開催しています。

参加者のみなさまのために「本当に役立つ情報の提供」を目標としています。

また、「 マジセミ 」を通じて、デジタル関連プロダクト(サービス)との「新たな出会いの場」「新たな体験の場」を創造することで、「IT業界の発展」「製造業の発展」「エンジニアの活躍促進」の実現を目指しています。

多くのセミナーの中から「ご自身のスキルやビジネスを強化できるセミナー」を見つけて、ぜひ一度、ご参加ください。

マジセミ


参考サイト
→github.com →facebook →buck2
→buck2.build

おすすめの記事

【デジタル寺田の3分用語解説】 「 OTセキュリティ 」とは?〜ITセキュリティ との違い〜🔑

デジタル寺田の3分用語解説

2024.12.02

【デジタル寺田の3分用語解説】 「 OTセキュリティ 」とは?〜ITセキュリティ との違い〜🔑

「 OTセキュリティ 」は、工場や発電所の産業用制御システムを守るためのセキュリティで、安全性が重視されます。ITシステムとの接続増加により脅威が高まり、「運用停止の難しさ」や「管理部門間の連携不足」が課題です。サイバー攻撃の増加に伴い、対策の強化が急務となっています。

【デジタル寺田の3分用語解説】 ガートナーが発表した「2025年の戦略的テクノロジの トップ トレンド 」とは?🌟

デジタル寺田の3分用語解説

2024.12.02

【デジタル寺田の3分用語解説】 ガートナーが発表した「2025年の戦略的テクノロジの トップ トレンド 」とは?🌟

ガートナーが発表した「2025年の戦略的テクノロジー トレンド 」には、自律的意思決定を行う「エージェント型AI」「AIガバナンス・プラットフォーム」「偽情報拡散防止技術」「次世代コンピューティング技術」が含まれます。これらは仕事や生活に深く影響し、企業競争力向上のカギとなると予測されています。

【デジタル寺田の3分用語解説】 「 103万の壁 」(年収の壁)とは?🧱

デジタル寺田の3分用語解説

2024.12.02

【デジタル寺田の3分用語解説】 「 103万の壁 」(年収の壁)とは?🧱

「 103万の壁 」とは、給与収入が年間103万円を超えると、所得税が課税される「年収ライン」を指します。このラインを超えると手取り収入が減少するため、多くの人が働き方を調整します。住民税や扶養控除外れも家計負担に影響します。他にも、厚生年金などの負担が発生する「壁」が存在し、制度の見直しが議論されています。