22:22:07 @uaa@social.mikutter.hachune.net
icon

あとはpkg/DESCRを書けば良いはず。

22:08:42 @uaa@social.mikutter.hachune.net
icon

libtoolがOpenBSDかgnuかの違い…切り替えてみたけど、どっちもtools/のビルドには失敗してるのでlibtoolの問題ではなさそう。

22:02:13 @uaa@social.mikutter.hachune.net
icon

でも個人的に/optとか/pkgというのはうーにゅってなることが…

22:01:55 @uaa@social.mikutter.hachune.net
2024-03-07 21:35:14 hfpの投稿 hfp@social.mikutter.hachune.net
icon

このアカウントは、notestockで公開設定になっていません。

21:55:27 @uaa@social.mikutter.hachune.net
icon

portsはとりあえずtools, pythonはdisableにしておくことにしよう。bindingsが作れる布石は打っておくけどそれ以上は面倒なのでやらないという方針で。

21:50:49 @uaa@social.mikutter.hachune.net
icon

ごあいさつ代わりに、opendhtのPython bindingをビルドする際のちょっとした問題に対するPRでも投げてみる。こんなんでもちゃんとレビューに掛けてくれるのかな(余計な仕事増やすな💢とか言われそう)。 github.com/savoirfairelinux/op

Web site image
reflect MsgPack_CFLAGS/LIBS for python bindings by jg1uaa · Pull Request #689 · savoirfairelinux/opendht
21:23:56 @uaa@social.mikutter.hachune.net
icon

まあOpenBSD使ってると確かにいちいち/usr/local/{include,lib}追加しないとダメってケースが多いのでめんどくせえなあと思う場面は多いのですが、そういうもんなのであんまり気にしてません。

21:23:04 @uaa@social.mikutter.hachune.net
2024-03-07 21:20:32 redbrick@HyZERO3強制解約済みの投稿 redbrick@social.mikutter.hachune.net
icon

このアカウントは、notestockで公開設定になっていません。

21:19:16 @uaa@social.mikutter.hachune.net
icon

(面倒ではあるんですが、なんでもかんでも/usr/includeや/usr/libに入れたれーという思想、自分はあんまり好きじゃないです)

21:18:34 @uaa@social.mikutter.hachune.net
icon

-L/usr/local/libを入れてるのは、標準で見に行く/usr/libにはシステム標準のライブラリしか入れないことになっているからで…ports等のパッケージ化されたものは/usr/local/libを見に行くようわざわざお願いしないといけないという事情があります。

21:17:18 @uaa@social.mikutter.hachune.net
icon

portsで使用するlibtoolはOpenBSD由来で、特段理由が無ければこれを使うようにという指示があります。もちろん、必要があればGNU libtoolの使用を認めてはいますが…何故GNUじゃないといけないのかという説明は求められますね。

20:57:52 @uaa@social.mikutter.hachune.net
icon

/bin/sh ../libtool --tag=CXX --mode=link c++ -std=c++17 -I/usr/local/include -L/usr/local/lib -O3 -Wno-deprecated -pedantic-errors -fvisibility=hidden -DMSGPACK_NO_BOOST -DMSGPACK_DISABLE_LEGACY_NIL -DMSGPACK_DISABLE_LEGACY_CONVERT -lopendht -lreadline -lfmt -L../src/.libs -L/usr/local/lib -lgnutls -lpthread -o dhtnode dhtnode.o

なぜこれでundefined symbolの嵐になるのか(OpenBSD上)。Slackwareの場合、OpenBSDと同じようにわざわざclang++使ってるけど全然問題無いっていうのが謎。

20:56:11 @uaa@social.mikutter.hachune.net
icon

/bin/sh ../libtool --tag=CXX --mode=link clang++ -std=c++17 -O3 -Wno-deprecated -pedantic-errors -fvisibility=hidden -DMSGPACK_NO_BOOST -DMSGPACK_DISABLE_LEGACY_NIL -DMSGPACK_DISABLE_LEGACY_CONVERT -lopendht -lreadline -lfmt -L../src/.libs -lgnutls -lpthread -o dhtnode dhtnode.o

これは何事もなくビルドできる(Slackware上)。

20:23:36 @uaa@social.mikutter.hachune.net
icon

ld: error: undefined symbol: dht::DhtRunner::getStorageLog() const
>>> referenced by dhtnode.cpp
>>> dhtnode.o:(cmd_loop(std::__1::shared_ptr<dht::DhtRunner>&, dht_params&))

えーと、どっちがどっちを呼ぼうとしてundefinedうんたらなんだっけー?と混乱中。

20:03:40 @uaa@social.mikutter.hachune.net
icon

ん?
sbopkgでインストールできるOpenDHTは1.7.4か。現状の最新版は3.1.7だから随分古くないか…?

あと、opendht.SlackBuildでのコンフィギュレーションはこんな感じか。
cmake \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DOPENDHT_TOOLS=OFF \
-DCMAKE_BUILD_TYPE=Release ..

ライブラリだけ、ツール類のビルドは無し。あと、slack-descでは"OpenDHT is a C++11 Kademlia distributed hash table implementation."ということで、C++17じゃなくC++11前提にしてる(古いから?)。

07:44:25 @uaa@social.mikutter.hachune.net
icon

OpenDHTのビルド、configure時のMsgPack_CFLAGS, MsgPack_LIBSの指定で進められるかと思ったけど、むしろCFLAGS, CXXFLAGSを適切に設定した方が良さそう。

って思ってたんだけど、やっぱtoolsのビルドで死にましたかー

07:29:12 @uaa@social.mikutter.hachune.net
icon

@trondd @hfp wow, pkg_add's man says

%c Expands to the string "snapshots" when running a -current or -beta
kernel, or if the command line option -D snap | -D snapshot is
specified. Otherwise, %c expands to %v, which selects a release
version.

thanks!

07:22:48 @uaa@social.mikutter.hachune.net
icon

@hfp 遅くなりました。PKG_PATHの設定でどうにかできました。ありがとうございます。