On Sun, Mar 21, 2021 at 5:33 PM ribbon <jm****@ribbo*****> wrote: > > On Sun, Mar 21, 2021 at 04:59:57PM +0900, 長南洋一 wrote: > > > git clone ssh://cyoic****@git*****/gitroot/linuxjm/jm.git > > > > としました。jm のローカルリポジトリを消していなければ、jm/.git/config > > に書いてあると思います。ご自分のメール [JM:02055] にもあります。 > > git clone https://scm.osdn.net/gitroot/linuxjm/jm.git > > をしました。 > jm というディレクトリが出来ました。その中に manual というディレクトリが出来ていました。 > > http://linuxjm.osdn.jp/guide/LDP_man-pages_update.html > > の 0.事前準備を実行しました。 やろうとしていることは、 LDP man-pages のバージョン更新でよろしいでしょうか? LDP man-pages の翻訳の更新なら、上記の URL ではなく http://linuxjm.osdn.jp/guide/LDP_man-pages.html の方を参照していると思いますが、 念の為の確認です。 > > % git status > On branch master > Your branch is up to date with 'origin/master'. > > nothing to commit, working tree clean > > であってますよね。 > > 1. po4a 環境の更新 > > で、Makefile の先頭には > # Upstream version > V = 5.10 > > となってました。 すでに LDP man-pages 5.10 にアップデート済みなので、 V = 5.10 になっているのは期待どおりです。 > rm -f workaround.patch しました。 バージョン更新時の手順としてはあっていますが、 すでに LDP man-pages 5.10 に更新済みなので、 workaround.patch を削除すると、make translate の中で po4a が解釈できない文法が あるとエラーが出るはずです。 http://linuxjm.osdn.jp/guide/LDP_man-pages_update.html#po4a-error の節の最後の方にある 原文を修正する対応方法を取ると、最終的にはこの workaround.patch が必要になります。 このあたりは更新する人の判断で行う部分なので、細かいことは説明しません。 > make setup しました。 > make disable-removed しました。何も表示はされませんでした。 > make print-new-files しました。何も表示はされませんでした。 > make translate しました。 > > mkdir -p stamp > po4a -k 80 --variable langs='ja' --previous --srcdir . --destdir . po4a/aio/aio.cfg > (415 entries) > Error: failed to execute 'msgmerge -U po4a/aio/po/ja.po po4a/aio/po/aio.pot --previous --backup=none': No such file or directory. > make: *** [Makefile:23: stamp/aio] Error 2 > > となりました。 このエラーは見たことないです。 まさか msgmerge コマンドがないということはないですよね? po4a をパッケージで入れると gettext が依存で入ることを期待しています。 Debian/Ubuntu ではそうなっています。 > po4a-lang-0.52-lp152.3.2.noarch > po4a-0.52-lp152.3.2.noarch > > なんですが、バージョンが古くて駄目なのでしょうか? po4a 0.52 で試したことはありますが、上記のエラーに出会ったことはないです。 ただし、 po4a 0.52 だと、make translate で以下のようなエラーが出ます。 レポジトリにある po4a の設定は po4a 0.57 で動作確認したものです。 長南さんが po4a 0.55 でも動作確認してくれています。 build/C/man4/smartpqi.4:13: (po4a::man) Unknown macro '.SY "modprobe smartpqi"'. Remove it from the document, or refer to the Locale::Po4a::Man manpage to see how po4a can handle new macros. Makefile:21: recipe for target 'stamp/special' failed 以下の対処を適用すれば po4a 0.52 で make translate は成功するはず (Ubuntu 18.04 bionic の po4a 0.52 では動作確認済み) ですが、 このような po4a のバージョンの差異にはどのように対応するのかは今後の課題でしょう。 ガイドに動作確認した po4a のバージョン情報などを書いておく? --- a/manual/LDP_man-pages/po4a/special/special.cfg +++ b/manual/LDP_man-pages/po4a/special/special.cfg @@ -319,6 +319,7 @@ [type: man] build/C/man4/smartpqi.4 \ $lang:build/$lang/man4/smartpqi.4 \ + opt:"-o translate_joined=SY,YS" \ add_$lang:?@po4a/add_$lang/lists/local-pre.list \ add_$lang:?@po4a/add_$lang/lists/man4/local-smartpqi.4.list \ add_$lang:?po4a/add_$lang/perkamon \