Apache Thrift 是一款高性能、跨語言的 RPC 服務框架,最初由 Facebook 開發後開源至 Apache 基金會。它支持 C++、Java、Python、PHP、Go、Node.js 等十幾種主流語言,通過定義中立的 IDL(接口定義語言)文件,自動生成客戶端與服務端代碼,實現服務間的無縫調用。本文詳細記錄在 Linux 環境下從源碼編譯安裝 Thrift 0.8.0 版本的完整步驟。
Thrift 依賴多個構建工具與庫,建議在 Debian/Ubuntu 系統下使用 apt-get 一鍵安裝:
sudo apt-get update
sudo apt-get install libboost-dev libboost-test-dev libboost-program-options-dev \
libevent-dev automake libtool flex bison pkg-config g++ libssl-dev
說明:libboost 系列為 C++ 運行時依賴,flex/bison 用於語法分析器生成,automake/libtool 用於構建系統,libssl-dev 提供加密支持。
# 下載指定版本(以 0.8.0 為例)
wget https://archive.apache.org/dist/thrift/0.8.0/thrift-0.8.0.tar.gz
# 解壓
tar -zxvf thrift-0.8.0.tar.gz
cd thrift-0.8.0
進入解壓目錄,根據 README/INSTALL 文件提示操作:
./bootstrap.sh./configure--prefix 指定安裝路徑,--without- 禁用特定語言綁定以加快編譯。make -j$(nproc)sudo make installthrift -version
# 輸出示例:Thrift version 0.8.0
若正常顯示版本號,即安裝成功。此後可編寫 .thrift IDL 文件,使用 thrift --gen 生成代碼。
config.log 確認具體缺失庫,補裝對應 -dev 包。PYTHON=python3 或調整 CXXFLAGS。sudo,或改裝用戶目錄 --prefix=$HOME/.local。Windows 下建議使用預編譯二進制或 vcpkg/Chocolatey 包管理器安裝,詳見官方 Wiki:ThriftInstallationWin32。