Linux ボックスで GATT を使用して、さまざまな特性を持つカスタム サービスをセットアップしようとしています。
この質問とそれがリンクするものを使用して、私が書く必要があるコードを特定することができました(gatt_service_add()
関数を利用して)。
gatt_service.c という別のファイルを作成し、必要と思われるコードを記述しました。しかし、ソリューションをコンパイルして実行するためにコードを Bluez ライブラリにリンクする方法がわかりません。たとえば、このサイト-lbluetooth
(BLE 開発用ではありません) は、gcc パラメーターとしてlibbluetooth を使用してリンクしていますが、コードを機能させるために何をリンクすればよいかわかりません。
何を投稿すればよいかわからないため、サンプルを投稿していません。必要なものがある場合、または何か言及していない場合はお知らせください。
前もって感謝します。
編集 - 詳細情報:
コメントに続いて、プラグイン/時間をベースとして使用して、独自の「ブロードキャスター サービス」用に独自のファイルを作成しました。完全なコードはこちらにあります(コードのどのビットを答えに入れるかわかりません!)。
私のコンパイルコマンドは次のとおりです(ここでgcc gatt_broadcaster_service.c -Wall -o gatt_broadcaster_service -lbluetooth 'pkg-config --cflags --libs glib-2.0' -I/home/alexander/Documents/bluez-5.29/lib
報告された問題を修正するためのglibビットを含む)。
私が得るエラーは次のとおりです: gatt_broadcaster_service.c:11:27: 致命的なエラー: lib/bluetooth.h: そのようなファイルまたはディレクトリはありません #include "lib/bluetooth.h"
私のCファイルはドキュメントに保存されており、私の調査によると、正しい場所を探していないため、lib/bluetooth.hが見つからないことがわかりました(これとこれは、ファイルがそうでない場合にコンパイラにインクルードフラグを使用することについて話しています一般的な場所では、しかし私はそれを機能させることはできません.
再度、感謝します!