このレポジトリは、 GRPC をビルドしてシステムにインストールするためのスクリプトや、CMake プロジェクトに統合するための設定ファイルを管理するレポジトリです。
ビルドターゲットのプラットフォーム
- macOS
- iOS
- Windows
- Linux
macOS 用には、 x86_64 と arm64 の universal binary としてライブラリがビルドされます。 iOS 用には、 arm64 のバイナリのみがビルドされます。
以下に必要なバイナリがあれば、それをダウンロードしてインストールするのが早いです。
インストール手順:
- 上記リンクから、必要なファイルをダウンロード
- 解凍すると、
install-macOS-arm64のようなフォルダになる。 v1.68.2のようにバージョン名でディレクトリを作る。- 3 で作ったディレクトリに 2 で解凍してできたフォルダを配置する。
- 最終的には以下のようなディレクトリ構造になる。
grpc-installer
├── README.md
├── cmake
│ └── grpc.cmake
├── install.sh
└── v1.68.2
├── install-iOS-arm64
└── install-macOS-universal
cd /path/to/develop
git clone git@github.com:magnetica-studio/grpc-installer.git
cd grpc-installer
# 目的のバージョン(タグ名)を指定して install.sh スクリプトファイルを実行します。
./install.sh v1.68.2
# 指定したバージョン名のディレクトリで macOS 用と iOS 用それぞれの GRPC がビルド/インストールされます。
# `build-*` ディレクトリがビルドディレクトリ、 `install-*` ディレクトリがインストールディレクトリになります。
# `build-*` ディレクトリは、ビルド/インストール完了後には使用しないので、削除しても問題ありません。
ls -la ./v1.68.2GRPC を利用する C++ プロジェクトの CMakeLists.txt から、以下のように cmake/grpc.cmake をインクルードします。
set(TARGET_GRPC_VERSION "v1.68.2")
include("/path/to/develop/grpc-installer/cmake/grpc.cmake")これによって以下の変数が用意されます
_PROTOBUF_LIBPROTOBUF: ProtocolBuffer のインクルード/リンク設定を含むターゲットを表す変数_GRPC_GRPCPP: GRPC のgRPC::grpc++ターゲットを表す変数_PROTOBUF_PROTOC: protoc コマンドのパス(iOS 向けのビルド時も macOS 用にビルドした方のコマンドのパスになる。)_GRPC_CPP_PLUGIN_EXECUTABLE: grpc_cpp_plugin コマンドのパス(iOS 向けのビルド時も macOS 用にビルドした方のコマンドのパスになる。)