23:05:34 @uaa@social.mikutter.hachune.net
icon

とりあえず今日はここまで。多少は進められたかな…

23:05:09 @uaa@social.mikutter.hachune.net
icon

Archだったら新し目のclang入ってるだろうし、これでビルドできるかどうかを判断材料にすれば良いんだろうか?

23:02:43 @uaa@social.mikutter.hachune.net
icon

www2.kobe-u.ac.jp/~lerl2/l_cc_

-fvisibility=defaultもしくはprotectedならOpenDHTのtoolsのビルドは通る。もともとhiddenだった場合、default/protectedのどちらへ置き換えるのが適切なんだろう。見えないシンボルに上書きしようが何しようが問題は無いけど、見えてしまっているシンボルに上書きして意図しない動作を起こされるくらいなら、上書きを禁止してライブラリの動作を守る側に振っておく方が良いのかなという気はする。

22:47:43 @uaa@social.mikutter.hachune.net
icon

ConoHaはOpenBSD使えるのか。とはいえGMO系は避けたいんだよな…他の選択肢を探そう。

22:40:00 @uaa@social.mikutter.hachune.net
icon

OPENDHT_IMPORT __attribute__ ((visibility ("default"), type_visibility ("default")))
OPENDHT_EXPORT __attribute__ ((visibility ("default"), type_visibility ("default")))
OPENDHT_HIDDEN __attribute__ ((visibility ("hidden"), type_visibility("hidden")))

こいつを仕込んだところで改善しないか…それにCではtype_visibility使うなって怒られるし。

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

attributeのtype_visibilityは今のところclang専用。libcxx.llvm.org/DesignDocs/Vis
問題がこれがいつごろから生えてきたかってことになるんだが…
clang-13.0には無い releases.llvm.org/13.0.0/tools
clang-14.0にも無い
releases.llvm.org/14.0.0/tools
clang-15.0には有る
releases.llvm.org/15.0.0/tools

ってことはclang-13.0と16.0だとビルドによる結果が変わる可能性はあるのかもしれない。

Symbol Visibility Macros — libc++ documentation
Attributes in Clang — Clang 13 documentation
Attributes in Clang — Clang 14.0.0 documentation
Attributes in Clang — Clang 15.0.0 documentation
22:04:08 @uaa@social.mikutter.hachune.net
icon

あれなんなんでしょうかね、何もしてないのにYouTubeが再生速度2倍になってるの。リロードとかすると治るんだけど…いきなりアレを食らうとちょっと焦る。

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

Symbol Visibility in OpenEXR openexr.com/en/latest/SymbolVi
ん?この表??

21:14:29 @uaa@social.mikutter.hachune.net
icon

Slackware-15.0はclang-13, OpenBSD-current(7.5beta)はclang-16。
どっちも-fvisibility=hiddenは効いていて、Slackwareならopendht/toolsのビルドは通る。

特にこのオプション/attribute絡みのバグって無い気がするんだけど…なんかあるのかなあ。

21:03:54 @uaa@social.mikutter.hachune.net
icon

(でもSlackware-15.0/i686上ではclangでも問題なくビルドできてたような)

21:03:23 @uaa@social.mikutter.hachune.net
icon

OPENDHT_IMPORT __attribute__ ((visibility ("default")))
OPENDHT_EXPORT __attribute__ ((visibility ("default")))
OPENDHT_HIDDEN __attribute__ ((visibility ("hidden")))

このattribute、clangで通るのか?

21:01:04 @uaa@social.mikutter.hachune.net
icon

OpenBSD-ports化したOpenDHT、付属toolsのビルドだけでなくmrefdのビルドでもリンクがうまくいかない(no referenceだかなんだかのエラーが出る)という問題で頭抱えてるんだけど…

openbsd-current-vm# diff configure.ac~ configure.ac
22c22
< [CXXFLAGS="${CXXFLAGS} -O3 -Wno-deprecated -pedantic-errors -fvisibility=hidden"])
---
> [CXXFLAGS="${CXXFLAGS} -O3 -Wno-deprecated -pedantic-errors -fvisibility=default"])
openbsd-current-vm#

この修正でtoolsのビルドが通ってる。fvisibilityの指定、Linuxでも特に変わらないはずだったよな…?

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

RAM2~4G、ストレージ100GB、CPUコア2~4個、OpenBSDを載せられる\1k以下/月の国内VPSなんてそうそう無いよねえ…

18:01:09 @uaa@social.mikutter.hachune.net
icon

VPSのメモリを増やすのは簡単じゃないけど、swap増やすのはもっと簡単じゃないかも。多分起動時にあれこれ動くのでmrefd殺されてる気がする。OpenBSDもカーネルのリンクし直しが最初に走るし…

14:26:03 @uaa@social.mikutter.hachune.net
icon

^[0-9]?[A-Z]{1,2}[0-9]{1,2}[A-Z]{1,4}(()|(/[A-Z0-9]{1,3}|-[A-Z0-9]))(()|([ ]*[A-Z]))$

^[0-9]?[A-Z]{1,2}[0-9]{1,2}[A-Z]{1,4}(($)|(/[A-Z0-9]{1,3}$|-[A-Z0-9]$)|([ ]*[A-Z]$)|((/[A-Z0-9]{1,3}|-[A-Z0-9])[ ]*[A-Z]$))

…これでいいのかなあ?

14:13:24 @uaa@social.mikutter.hachune.net
icon

分解するとこうなるのか。
^[0-9]?[A-Z]{1,2}[0-9]{1,2}[A-Z]{1,4}
(()|(/[A-Z0-9]{1,3}|-[A-Z0-9]))
(()|([ ]*[A-Z]))
$

で、()の部分が嫌なんだって、POSIX regex。流石にこれは4通りのパターンに展開しないとダメ?

14:04:50 @uaa@social.mikutter.hachune.net
icon

clientRegEx = std::regex("^[0-9]?[A-Z]{1,2}[0-9]{1,2}[A-Z]{1,4}(()|(/[A-Z0-9]{1,3}|-[A-Z0-9]))(()|([ ]*[A-Z]))$", std::regex::extended);
こいつが
libc++abi: terminating with uncaught exception of type std::__1::regex_error: An empty regex is not allowed in the POSIX grammar.
で引っかかるんだけどどう直したもんか…

21:36:11 @uaa@social.mikutter.hachune.net
icon

EPSONの98互換機、フォントのためだけに欲しくなることが…時々…うっ

21:35:02 @uaa@social.mikutter.hachune.net
2023-03-10 21:31:15 painaの投稿 paina@social.mikutter.hachune.net
icon

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

21:30:13 @uaa@social.mikutter.hachune.net
2023-03-10 21:29:20 painaの投稿 paina@social.mikutter.hachune.net
icon

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

21:26:59 @uaa@social.mikutter.hachune.net
2023-03-10 21:20:00 uaaの投稿 1f46356a832a4b2d65c12e9f7c6fd8608a285b1efa896773f4f67c6ee9e33e21@mostr.pub
icon

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

07:47:33 07:48:21 @uaa@social.mikutter.hachune.net
icon

jansson使用時におけるメモリリークの確認…malloc()/free()のすげ替えができるようだからここを使用して確保/解放したメモリのポインタを追うとかすればイケますかね? jansson.readthedocs.io/en/2.11