ApsaraMQ for RocketMQ C++ SDK をインストールし、Windows または Linux 上でプロジェクトを構成して、メッセージをパブリッシュおよびサブスクライブします。
前提条件
開始する前に、以下のものが揃っていることを確認してください:
Python 3.5 以降 (SCons に必要)
SCons ビルドツール
(Windows のみ) Visual Studio 2015 以降
このトピックの例では Visual Studio 2019 を使用しています。他のバージョンでは UI レイアウトが若干異なる場合があります。
SDK のインストール
Windows
C++ SDK パッケージをダウンロードし、ローカルディレクトリに解凍します。
SDK ディレクトリで、次のコマンドを実行して C++ プロジェクトをコンパイルします:
sconsSDK ディレクトリから include フォルダと lib フォルダを C++ プロジェクトディレクトリにコピーします。
Visual Studio のプロジェクトプロパティを構成します。プロジェクトを右クリックし、[プロパティ] を選択します。
[] に移動します。[追加のインクルード ディレクトリ] を、手順 3 でコピーした include フォルダのパスに設定します。
a. インクルードパスの設定
に移動します。[追加のインクルード ディレクトリ] を、ステップ 3 でコピーした include フォルダのパスに設定します。

b. ライブラリパスの設定
に移動します。[追加のライブラリ ディレクトリ] を、以下の両方のパスに設定します:
ステップ 3 でコピーした lib フォルダ
lib\windows\<Platform> フォルダ。ここで <Platform> は、64 ビットシステムの場合は AMD64、32 ビットシステムの場合は I386 です。

c. リンカーの依存関係の設定
に移動します。以下のライブラリを [追加の依存ファイル] に追加します:
mqcpp.lib libcurl.lib libcurl_debug.lib libeay32MT.lib libeay32MTd.lib ssleay32MT.lib ssleay32MTd.lib DbgHelp.lib User32.lib GDI32.lib Advapi32.lib
サンプルコードをプロジェクトファイルにコピーし、インラインコメントに基づいてパラメーターの値を更新します。
アイコンをクリックしてプロジェクトをコンパイルします。説明unresolved external symbolのようなリンカーエラーが発生した場合は、[追加のライブラリ ディレクトリ] と [追加の依存ファイル] のパスが正しいこと、および一致するプラットフォーム (x64 または x86) 用にビルドしていることを確認してください。
Linux
以下の手順では CentOS を例として使用しています。他のディストリビューションの場合は、パッケージマネージャーのコマンドを適宜変更してください (例:Ubuntu/Debian では apt-get を使用)。
C++ SDK パッケージをダウンロードし、ローカルディレクトリに解凍します。
必要な依存関係をインストールします:
yum install libcurl-devel # HTTP クライアントライブラリ (SDK のネットワークに必要) yum install openssl-devel # TLS/SSL ライブラリ (安全な接続に必要)SDK ディレクトリで、次のコマンドを実行して C++ プロジェクトをコンパイルします:
sconsSDK ディレクトリから include フォルダと lib フォルダを C++ プロジェクトディレクトリにコピーします。
サンプルコードをプロジェクトファイルにコピーし、インラインコメントに基づいてパラメーターの値を更新します。
プロジェクトをコンパイルします。
producer.cppをご自身のソースファイル名に置き換えてください:g++ producer.cpp -o producer lib/libmqcpp.a -I include/ -lcurl -lcrypto説明cannot find -lcurlやcannot find -lcryptoのようなエラーが発生した場合は、libcurl-develとopenssl-develがインストールされていることを確認してください (ステップ 2)。一部のディストリビューションでは、ldconfigを実行して共有ライブラリキャッシュをリフレッシュする必要があります。
次のステップ
メッセージのパブリッシュとサブスクライブの完全な例については、「サンプルコード」をご参照ください。