2019/05/20

[c/c++]protobuf-c (8)

「8?」と思われそうだが、7回目は1年以上前だ。

hiro99ma blog: [c/c++]protobuf-c (7)
https://hiro99ma.blogspot.com/2018/04/ccprotobuf-c-7.html


LMDBとの組み合わせで使えないか、調べようとしているのだ。
第7回で宿題があるようだが・・・もう忘れよう。


忘れようというか、まったく覚えていないのでインストールからやり直しだ。

以前はprotobufをソースからビルドしたようだが、もうprotobuf-cだけ動けばいいので、aptで済ませる。

sudo apt install libprotobuf-dev libprotoc-dev

GitHubからprotobuf-cをcloneして、autogen, configure, make。
手順を思い出しながら書いているので、何か抜けてるかもしれん。

ともかく、makeできたらsudo make installまでやる。
pluginとして使われるので、どこにインストールしたらいいのかわからんかったのだ。


1年経ったし、proto3でやろう。

examplesはaddressbook.proto

$ protoc --c_out=. addressbook.proto

これでc, hファイルができる。

mainは、以前作ったやつを使ってみよう。

$ gcc `pkg-config --cflags 'libprotobuf-c >= 1.0.0'` -o tst write.c addressbook.pb-c.c `pkg-config --libs 'libprotobuf-c >= 1.0.0'`

timestampのprotobuf-c版がいるようだが、それがないのでコンパイルエラーになってしまった。
めんどうなので、protoからtimestamp関係をコメントアウトしてprotocからやり直すと、通った。



しかし、実行しようとするとlibprotobuf-c.so.1がないとか言い始めた。。。
sudo ldconfigすると、実行できた。
やれやれ。

2019/05/18

boogie board BB-1GX購入

電子部品とか計測器とかではないモノを買った記事は久々な気がする。
ともかく、キングジムのBB-1GXを買いました。