来週着を予定していた #TurboLinux 6.0が届いてしまった....
#TurboLinux のディスクを #Windows でマウントすると、 #ATOK のRPMが "\TURBOLIN\RPMS\ATOK12SE.RPM" なのに、 #Linux でマウントすると "\TurboLinux\RPMS\ATOK12SE-1-20.i386.rpm" になるのってどういう仕組み? (→ #RockRidge フォーマットと判明)
ファイル名を信じるのであれば、ATOK 12 SE/R.2はバージョン1, リリース20のようである。なんだそりゃ?
RPMパッケージのネーミング規則 https://docs.oracle.com/cd/E96517_01/ladbi/rpm-packages-naming-convention.html#GUID-04FBD99C-77A8-4E31-9C8D-5B6B2EAE68DB
普通はrpm2cpioでぶちまけられたやつをパイプでサブシェルに渡してcpioコマンドを実行するらしいですね?と思いながら、バラで実行すると、いい感じ™にぶちまけられた
ubuntuuser@ubuntuuser-VirtualBox:~/ドキュメント$ rpm2cpio ATOK12SE-1-20.i386.rpm > ATOK12SE-1-20.i386.cpio
ubuntuuser@ubuntuuser-VirtualBox:~/ドキュメント$ mv ATOK12SE-1-20.i386.cpio ATOK12SE/
ubuntuuser@ubuntuuser-VirtualBox:~/ドキュメント$ cd ATOK12SE/
ubuntuuser@ubuntuuser-VirtualBox:~/ドキュメント/ATOK12SE$ cpio -F ./ATOK12SE-1-20.i386.cpio -id
61399 ブロック
ファイルをいい感じ™に配置してatok12xを実行しようにも、 #bash くんが "そのようなファイルやディレクトリはありません" などとぬかしてきた。どうもライブラリが足らないとそのようなメッセージが出る事例がある模様 (は???) ちなみに本件は先にatok12prxを実行しようとしてロケールが云々のエラーでセグフォを吐いたので、何も考えずにEUC-JPを追加した (しかしatok12prxは動かなかった) #ATOK #Linux
Ubuntu日本語フォーラム / "そのようなファイルやディレクトリはありません"というエラーに関して https://forums.ubuntulinux.jp/viewtopic.php?pid=124725#p124725
日本語でおk
ubuntuuser@ubuntuuser-VirtualBox:~/documents/ATOK12SE/usr/X11R6/bin$ Warning: Cannot load app-defaults file.
Kinput2 may not work properly without it.
Maybe kinput2 is not installed correctly,
or your file search path (specified by
environment variable 'XFILESEARCHPATH')
is wrong.
�Ѵ������Ф���³�Ǥ��ޤ���Ǥ�����
Error: IMProtocol: resource locales must be specified at widget creation
相変わらず文字化けしてんな。gnome-terminalなんて使うなという気もするが
ubuntuuser@ubuntuuser-VirtualBox:~/documents/ATOK12SE/usr/X11R6/bin$ ./kinput2x
Warning: Cannot load app-defaults file.
Kinput2 may not work properly without it.
Maybe kinput2 is not installed correctly,
or your file search path (specified by
environment variable 'XFILESEARCHPATH')
is wrong.
�Ѵ������Ф���³�Ǥ��ޤ���Ǥ�����
Error: IMProtocol: resource locales must be specified at widget creation
#kinput2 セルフビルドのやっていきが生えてきたけど、どのロケールを使いたいのかよくわからないatok12prxの起動に失敗し続けているので、 #TurboLinux の起動実験に再度取り組むべきなのだろう #ATOK
ubuntuuser@ubuntuuser-VirtualBox:~/documents/ATOK12SE/usr/bin$ ./atok12prx
Warning: locale not supported by C library, locale unchanged
Warning: locale not supported by Xlib, locale set to C
Warning: X locale modifiers not supported, using default
@hadsn 使うlocaleは ja_JP.eucJPが一番無難なはずだし(X11層では伝統的にこれです。glibc層だとおそらく ja_JP.eucJP、ja_JP.eucjp、ja_JP.EUC-JP の全部が動くとは思いますが)、このエラーはやっぱりlocaleデータベースの追加に失敗してますね。
https://zenn.dev/tmtms/articles/202205-locale
にある追加手順に抜けはありませんか?
「locale -a」でja_JP.eucjpは表示されていますか?
@n_soda 状況はまだ確認できてないのですが、前述の通りlanguage-pack-jaは入れていないので、charmapなどの中身がないハコだけのロケールができあがっているという状態なんですかね?
@n_soda フツーにja_JP.eucJPが返ってきていますね
@hadsn なるほどglibcの方は大丈夫だと。これは予想が外れました。
kinput2xがリンクしているX11関係のライブラリがうまく動いてないってことですかね。
Ubuntu付属のライブラリがリンクされているんでしょうか?
それともkinput2xに静的リンクされている?
@n_soda XSEARCHPATHをちゃんと設定しろ、端末をEUC-JP設定にすると日本語で変換サーバと接続できなかったと言うkinput2xと、SEGVを吐くatok12prxとともどもlddには動的実行ファイルではないと言われ、fileからはstatically linkedと言われているので、そういう意味でもダメっぽいですね
@hadsn スタティックリンクですか。
strace で見ると、X11 用の locale データベースはどこにあった気配なんでしょう。
当時は /usr/X11R6/lib/X11/locale/ あたりじゃないかという気がするんですが…
たぶん当時のdistroから、/usr/X11R6/lib/X11 相当を一式持ってきて展開すれば動くと思います。
あるいは当時の /usr/X11R6/lib/X11/locale/ 相当は今の Ubuntu だと /usr/share/X11/locale/ に対応するので、仮にプリフィックスが /usr/X11R6 だったとすると
mkdir -p /usr/X11R6/lib/X11
ln -s /usr/share/X11/locale /usr/X11R6/lib/X11/
でシンボリックリンクを張ってやるだけでもなんとかなるかも。
@n_soda シンボリックリンクを貼ったら上がってきてしまいましたね.... フォントが読めてないのかのっぺらぼうになってしまっていますが
@hadsn
main()
{
char *rv = setlocale(LC_ALL, "");
if (rv == NULL)
fprintf(stderr, "setlocale failed\n");
else
printf("%s\n", rv);
return 0;
}
みたいなプログラムをビルドして「env LC_ALL=ja_JP.eucJP ./a.out」と実行すると setlocale failed と表示される状況でしょうか?
もしそうなら、環境変数をすべて削除して再度「env LC_ALL=ja_JP.eucJP ./a.out」を試してみるべきかもしれません。
それでもまだダメなら再インストール?