fj.editor.mule、fj.sys.rs6000、fj.comp.input-method.wnnにクロス
ポストです。
現在、以下の環境でWnnが使えるMuleを構築中です
[環境]
OS:AIX4.3.2
Mule:2.3(Emacs19.28ベース及びEmacs19.34ベース)
Wnn:バージョン4及びバージョン6
WnnはおいといてとりあえずMuleだけでも動かそうと思い、以下の
手順でコンパイルし、動作確認も取れました。
1.configureスクリプトの実行
#> ./configure rs6000-ibm-aix4.1
2.make実行
#> make
さて本題のWnnが使えるMuleの構築です。以下の手順で行いまし
た。
1.configureスクリプトの実行
#> ./configure
rs6000-ibm-aix4.1 --with-wnn4 --wnn-includes=/usr/local/X11R6/include/wnn --
wnn-libraries=/usr/local/lib/libwnn.a
2.make実行
#> make
すると、temacsをリンクする段階で以下のようなメッセージが出力
されます。(ベースのEmacsのバージョンやWnnのバージョンを変えて
も全く同じです。)
ld: 0711-317 ERROR: Undefined symbol: crypt
よくよく調べてみると、このcryptというシンボルを呼んでいるのは
libc.aのようです。どういうことなんでしょう?識者のアドバイスをお願い
します。
Tsutomu Miyashita wrote:
> すると、temacsをリンクする段階で以下のようなメッセージが出力
> されます。(ベースのEmacsのバージョンやWnnのバージョンを変えて
> も全く同じです。)
>
> ld: 0711-317 ERROR: Undefined symbol: crypt
>
> よくよく調べてみると、このcryptというシンボルを呼んでいるのは
> libc.aのようです。どういうことなんでしょう?識者のアドバイスをお願い
> します。
AIXの素人ですが。
リンク時に -lcrypt を付ければいいというような単純な問題では
ないですよね。crypt()ってUNIX一般で暗号化の関数ですね。
--
いとう
i...@mb.i-chubu.ne.jp
> リンク時に -lcrypt を付ければいいというような単純な問題では
> ないですよね。crypt()ってUNIX一般で暗号化の関数ですね。
glibcなlinux(slackware)で --with-wnn6 したら同様にこけました。
(js.o(libwnn.a)が要求するようです。)
少なくともうちの環境では単純な問題の様で
$LDFLAGS='-lcrypt'
$make で解決しました。
--
----------------------------------------------------------
Name: Jun-ichi Hasegawa se...@pis.bekkoame.ne.jp
下記フォローありがとうございます。
Jun-ichi Hasegawa wrote in message <7ltvp6$qu6$1...@fu.bekkoame.or.jp>...
>"Y.Ito" <i...@mb.i-chubu.ne.jp> writes:
>> AIXの素人ですが。
>unix全般の素人ですが
>
>> リンク時に -lcrypt を付ければいいというような単純な問題では
>> ないですよね。crypt()ってUNIX一般で暗号化の関数ですね。
>glibcなlinux(slackware)で --with-wnn6 したら同様にこけました。
>(js.o(libwnn.a)が要求するようです。)
>少なくともうちの環境では単純な問題の様で
>$LDFLAGS='-lcrypt'
>$make で解決しました。
AIXの/usr/libの下に確かにlibcrypt.aがありましたので、ご指摘の通り
以下のようにしてみました。
#> export LDFAGS='-lcrypt'
#> make
すると、確かにcryptのシンボルは解決できて以前のメッセージは出力
されなくなったのですが、今度は以下のように新たなシンボルの未解決
が表示されるようになりました。
ld: 0711-317 ERROR: Undefined symbol: __crypt_r
ld: 0711-317 ERROR: Undefined symbol: __setkey_r
ld: 0711-317 ERROR: Undefined symbol: __encrypt_r
引き続き識者のアドバイスをお願いします。
Tsutomu Miyashita wrote:
> ld: 0711-317 ERROR: Undefined symbol: __crypt_r
> ld: 0711-317 ERROR: Undefined symbol: __setkey_r
> ld: 0711-317 ERROR: Undefined symbol: __encrypt_r
>
> 引き続き識者のアドバイスをお願いします。
後ろに"_r"がついているシンボルは多分リエントラント(マルチスレッド)
対応を意味する物ではないかと思います。Muleのドキュメントにその
あたりなにか書いてないでしょうか。コンパイル時にスレッドを使わな
いようにするとか(う~ん適当)
これ以上はちょっととわかりません。
(マニュアルもmanコマンドも無い状態でしかAIXを使ったことがないので)
--
いとう
i...@mb.i-chubu.ne.jp
> 以下の手順でコンパイルし、動作確認も取れました。
432でもaix4.1でいけるんですね。
さて、まずご報告の点。
何に書いてあったか、すっかり忘れているのですが、
ldに何かオプションを付けると良かった筈です。あ、
-lcryptでは*ない*です。/usr/lib/syscalls.expというのが
ありますよね?(directoryはうろ覚えです。)それと
同じような物を作成して、-Bでldに与えるんだったかな?
何に書いてあったかすっかり忘れているので、申し訳
ありませんが、お捜し下さい。
# Wnn4に書いてあるのか、Muleのかすら覚えていない
もう一つの方法。AIX432ということはjkitのCD-ROMもお持ちでは
ないですか?別に持って無くてもいいのですが、それだったら
はなからWnn4のライブラリ等は使わずに、Wnn6のSDKで作って
しまった方が手っ取り早いのではないかと...
<at...@ra2.so-net.ne.jp> wrote in message
news:7ov1al$bcl$1...@news01cg.so-net.ne.jp...
> あたくと申します。
> もう何年も前にAIX4.1の上でWnn4/Wnn6付きの
> Mule2.3(19.28)を作った事があります。ところで、
>
> > 以下の手順でコンパイルし、動作確認も取れました。
> 432でもaix4.1でいけるんですね。
configureのオプションはaix4.1でいけました。ただ、
/usr/include/netdb.hの以下の部分をコメントアウトす
る必要がありました。(こんな事していいのかという疑
問は残りますが...)
#define h_errno (*(int *)h_errno_which())
> もう一つの方法。AIX432ということはjkitのCD-ROMもお持ちでは
> ないですか?別に持って無くてもいいのですが、それだったら
> はなからWnn4のライブラリ等は使わずに、Wnn6のSDKで作って
> しまった方が手っ取り早いのではないかと...
はい、jkitのWnn6を使用しました。ただ、Wnn6用SDK
のコンパイルが当方のCコンパイラとの相性が原因で
コンパイルできず、オムロンソフトウェア技術サポート
からこのバイナリを頂いてなんとかMule with Wnn6
を構築することが出来ました。
この時、オムロンソフトウェア技術サポートには大変
親切にサポートしていただいたことを付け加えておきま
す。