- PR -

syslog-ngの実行時のエラーについて(Solaris9)

1
投稿者投稿内容
proper
会議室デビュー日: 2005/12/05
投稿数: 17
投稿日時: 2006-07-31 16:50
何時もお世話になります。
syslog-ng-1.9.10の実行時のエラーについてご教授ください。

configureやmakeはエラーも無く終了したのですが
syslog-ngを実行しようとすると
$ syslog-ng -v
ld.so.1: syslog-ng: fatal: /usr/local/lib/libgcc_s.so.1: wrong ELF class: ELFCLASS32
と表示されます。

Webで色々と検索しlibgccが32bitだから使えないと言う理由だと解りました。
(正解かどうかはわかりませんが)
それでprofileに
LD_LIBRARY_PATH64=/usr/sfw/lib/sparcv9を追加しました。
が同様のエラーが表示されます。
ちなみに
# env LD_LIBRARY_PATH=/usr/sfw/lib/sparcv9 syslog-ng -v
とすると
ld.so.1: syslog-ng: fatal: libiconv.so.2: open failed: No such file or directory Killed
となります。

何が原因か混乱してしまいました。
お手数ですがご教授の程宜しくお願い致します。
kaz
ぬし
会議室デビュー日: 2003/11/06
投稿数: 5403
投稿日時: 2006-07-31 23:52
こんばんわ.
引用:

properさんの書き込み (2006-07-31 16:50) より:

Webで色々と検索しlibgccが32bitだから使えないと言う理由だと解りました。
(正解かどうかはわかりませんが)
それでprofileに
LD_LIBRARY_PATH64=/usr/sfw/lib/sparcv9を追加しました。
が同様のエラーが表示されます。


よくわかりませんが,「追加しました」の後に compile し直すとか?
かつ
ベテラン
会議室デビュー日: 2006/04/04
投稿数: 56
投稿日時: 2006-08-01 11:08
# Linux-usersメーリングリストにも出されていますが、これもマルチポストに
# なるのかな?

まず、デフォルトでSolaris9をインストールしてもgccは入っていませんが、どの様
にgccをインストールされました?
libgcc_s.so.1はgcc-3系のライブラリだと思いますが、64bit用gccをインストール
されたのでしょうか?

あと、syslog-ngはどの様にコンパイルしましたか?
そもそもsyslog-ngを64bitで導入する必要はありますか?

>LD_LIBRARY_PATH64=/usr/sfw/lib/sparcv9を追加しました。

これは、/usr/sfw/lib/sparcv9/ 配下に libgcc_s.so.1 の64bitライブラリが有れば
有効でしょう。まず「ある」かどうかを確認されてみては如何でしょうか?
proper
会議室デビュー日: 2005/12/05
投稿数: 17
投稿日時: 2006-08-01 14:15
かつさんご教授ありがとうございます。
#最初にマルチポストにあたる可能性をご指摘頂きありがとうございます。
#確かにかつさんの言われる通りかもしれません。
#申し訳ありません。

gccはGNUgcc 3.4.4 SPARC 64bit Solaris 9をインストールしました。
確かにsyslog-ngを64ビットで使用する必要はありません。
syslog-ngは
$ LDFLAGS="-lrt" ./configure --enable-dynamic-linking
$ make
$ make install
を致しました。またlibgcc_s.so.1ですがfindで検索すると
/usr/local/lib/libgcc_s.so.1
/usr/local/lib/sparcv9/libgcc_s.so.1
となりました。
64ビットライブラリーは/usr/local/lib/sparcv9だと思います。
LD_LIBRARY_PATH64=/usr/local/lib/sparcv9と設定し
再度configuから行いましたが結果は同じでした。

お手数ですが再度ご教授頂ければと思います。
かつ
ベテラン
会議室デビュー日: 2006/04/04
投稿数: 56
投稿日時: 2006-08-01 15:58
>ご教授ありがとうございます。
いや、私は偉く無いので「教え授ける」事はできません。出来るのはせいぜい「教示」くらいです。

さて、私はSolarisの64bit環境は使った事が無いので、今回の件は良くわかりません。

Linux-users に出されたメールを見ると、libgcc_s.so.1 は /usr/local/lib/ 配下のを使おうとしているみたいなので、それを /usr/local/lib/sparcv9/ 配下のを使う様に指定してみていはいかがでしょう。

$ LDFLAGS="-lrt -L/usr/local/lib/sparcv9 -R/usr/local/lib/sparcv9" ./configure 〜
1

スキルアップ/キャリアアップ(JOB@IT)