すべてのプロダクト
Search
ドキュメントセンター

ApsaraMQ for RocketMQ:C++ SDK (V1.x.x) のセットアップ

最終更新日:Mar 12, 2026

Linux または Windows 向けの開発環境を構築し、ApsaraMQ for RocketMQ C++ SDK V1.x.x を使用してメッセージの送信および受信を行えるようにします。

前提条件

開始する前に、以下の条件を満たしていることを確認してください。

  • ApsaraMQ for RocketMQ が有効化された Alibaba Cloud アカウント

  • ApsaraMQ for RocketMQ コンソールで作成済みのトピックおよびコンシューマーグループ

  • アプリケーションをデプロイするための Elastic Compute Service (ECS) インスタンス

重要

本ガイドでは、C++ SDK V1.x.x のみを対象としています。メッセージタグはアプリケーション側で定義されるものであり、コンソールでの設定は不要です。

SDK のダウンロード

C++ SDK は Windows および Linux をサポートしており、両プラットフォームで同一のインターフェイスを提供します。Linux の場合、CentOS 6(RHEL 6)および CentOS 7(RHEL 7)がサポートされています。

SDK パッケージは、[リリースノート] ページからダウンロードできます。

パッケージの内容

パッケージを展開すると、ディレクトリには以下が含まれます。

ディレクトリまたはファイル説明
demo/事前構成済みの Visual Studio プロジェクト(Windows 専用)
example/通常メッセージ、ワンウェイメッセージ、および順序付きメッセージの送信および消費を行うサンプルコード。Linux 向けには Makefile
include/アプリケーションで使用するヘッダーファイル
lib/静的ライブラリおよび共有ライブラリ(下記参照)
SDK_GUIDE.pdfSDK 環境セットアップガイドおよびよくある質問(FAQ)
changelog各リリースにおけるバグ修正および新機能

ライブラリファイル

Linux

パスファイルタイプ
lib/lib-boost-static/libonsclient4cpp.aBoost を静的にリンクした静的ライブラリ
lib/lib-boost-share/libonsclient4cpp.so共有ライブラリ(Boost の共有ライブラリが必要)

Windows

パスファイル説明
lib/64/SDK DLL64 ビット動的ライブラリ
lib/vc_redist.x64Visual C++ 2015 ランタイム。Visual Studio 2015 がインストールされていない場合は、このランタイムをインストールしてください。

Linux 環境のセットアップ

2016 年 12 月 2 日以降、Linux 向け C++ SDK は CPU 使用率の低減およびスループットの向上のため、Boost 1.62.0 に依存しています。

SDK では、以下の Boost ライブラリが必要です。

ライブラリ必須
boost_systemはい
boost_threadはい
boost_chronoはい
boost_filesystemはい

プロジェクトの要件に応じて、以下のいずれかのリンク戦略を選択してください。

オプション 1:静的リンク(推奨)

プロジェクトが既に Boost に依存していない場合にこのオプションを使用します。lib/lib-boost-static/libonsclient4cpp.a に含まれる静的ライブラリは、上記 4 つの Boost ライブラリをすべてバンドルしているため、別途 Boost をインストールする必要はありません。

付属の Makefile を使用したビルド

cd aliyun-mq-linux-cpp-sdk    # 展開後の SDK のルートディレクトリ
cd example                     # トピックおよびアクセスキーを設定するよう、サンプルファイルを編集
make static=1
重要

完全な静的ビルドには、libstdc++.alibpthread.a および関連する静的ライブラリが必要です。デフォルトでは、ほとんどのディストリビューションで libstdc++ には静的ライブラリが同梱されていません。必要な静的ライブラリは、yum または apt-get を使用してインストールしてください。

完全な静的ビルドでは、以下の警告が出力される場合があります。

warning: Using 'gethostbyaddr' in statically linked applications requires at runtime
the shared libraries from the glibc version used for linking

推奨アプローチ:SDK のみを静的リンク

この警告を回避するには、libonsclient4cpp のみを静的リンクし、システムライブラリは動的リンクのままにします。

g++ -ggdb -Wall -O3 -I../include \
    ../example/ProducerExampleForEx.cpp \
    -Wl,-static -lonsclient4cpp -L../lib/lib-boost-static/ \
    -Wl,-Bdynamic -lpthread -ldl -lrt \
    -o ../example/ProducerExampleForEx
説明

GCC 5.x 以降でコンパイルする場合は、GCC 5 で導入された デュアル ABI に対応するため、-D_GLIBCXX_USE_CXX11_ABI=0 フラグを追加してください。

オプション 2:動的リンク

プロジェクトが既に Boost に依存している場合、または共有ライブラリを好む場合にこのオプションを使用します。この方法では、ローカルに Boost 1.62.0 をインストールする必要があります。

ステップ 1:Boost 1.62.0 のインストール

  1. Boost 1.62.0 をダウンロードします。

  2. アーカイブを展開します。

       tar --bzip2 -xf /path/to/boost_1_62_0.tar.bz2
  3. Boost をビルドおよびインストールします。

       cd path/to/boost_1_62_0
       ./bootstrap.sh
       ./b2 link=shared runtime-link=shared
       ./b2 install
  4. Boost 共有ライブラリがリンカーの検索パスに存在することを確認します。出力が表示されない場合は、Boost ライブラリのパスを /etc/ld.so.conf に追加し、ldconfig を実行してください。

       ldconfig -v | grep libboost

ステップ 2:アプリケーションのビルド

cd aliyun-mq-linux-cpp-sdk    # 展開後の SDK のルートディレクトリ
cd example                     # トピックおよびアクセスキーを設定するよう、サンプルファイルを編集

g++ -Wall -Wno-deprecated \
    -L ../lib/lib-boost-share/ -I ../include/ \
    ProducerExampleForEx.cpp \
    -lonsclient4cpp -lboost_system -lboost_thread -lboost_chrono -lboost_filesystem \
    -lpthread

export LD_LIBRARY_PATH="../lib/lib-boost-share/"
./a.out

Windows 環境のセットアップ

Visual Studio 2015

  1. Visual Studio 2015 で新しいプロジェクトを作成します。

  2. 構成マネージャー を開き、以下の設定を行います。

    • アクティブなソリューション構成リリース に設定

    • アクティブなソリューションプラットフォームx64 に設定

  3. 出力ディレクトリを構成します。

    • プロパティ > 構成プロパティ > 全般 に移動します。

    • 出力ディレクトリ を任意のディレクトリ(例:C:\myproject\output)に設定します。

    • SDK の lib\64\ ディレクトリ内のすべてのファイルを出力ディレクトリにコピーします。

  4. インクルードパスを構成します。

    • プロパティ > 構成プロパティ > C/C++ > 全般 に移動します。

    • 追加のインクルードディレクトリ にディレクトリ(例:C:\myproject\include)を追加します。

    • SDK の include\ ヘッダーファイルをこのディレクトリにコピーします。

  5. ライブラリパスを構成します。

    • プロパティ > 構成プロパティ > リンカー > 全般 に移動します。

    • ステップ 3 で指定した出力ディレクトリを、追加のライブラリディレクトリ に追加します。

  6. SDK のライブラリ依存関係を追加します。

    • プロパティ > 構成プロパティ > リンカー > 入力 に移動します。

    • ONSClient4CPP.lib追加の依存関係 に追加します。

  7. プリプロセッサマクロを追加します。

    • プロパティ > 構成プロパティ > C/C++ > プリプロセッサ に移動します。

    • WIN32プリプロセッサ定義 に追加します。

  8. ビルド をクリックしてコンパイルします。実行可能ファイルを実行する前に、SDK の DLL を出力ディレクトリまたはシステム PATH 内のディレクトリにコピーしてください。

その他の Visual Studio バージョン

  1. 上記の Visual Studio 2015 の手順に従ってプロジェクトを構成します。

  2. ターゲットマシンに Visual C++ 2015 ランタイム(vc_redist.x64)をインストールします。

重要

手動構成を省略するには、SDK の demo/ ディレクトリに含まれる事前構成済みのデモプロジェクトを Visual Studio 2015 で開きます。サンプルコード内のトピックおよびアクセスキーの値を更新し、ビルドおよび実行してください。

次のステップ