• 締切済み

64bitのRedHatでlibSSH2がmakeできません。。

RedHatEnterprise3で、libsslをmakeすると、 下記のエラーとなり検索しても原因がわからず困っています。 ■libssh2の最新(2-0.14) gcc -o channel.o channel.c -c -g -O2 /usr/include -I/usr/include -Wall -I../include/ -fPIC gcc: -c や -S と一緒に -o を指定すると、複数コンパイルできません make[1]: *** [channel.o] エラー 1 ■libssh2(2-0.13) /usr/bin/ld: /usr/local/lib/libcrypto.a(md5_dgst.o): 再配置 R_X86_64_32 は共有オブジェクトを作成したときには使えません -- -fPIC を付けて再コンパイルしてください /usr/local/lib/libcrypto.a: could not read symbols: 不正な値です collect2: ld はステータス 1 で終了しました Makefileを開き、CFLAGSに-fPICを付けてmakeしましたが 同じエラーメッセージでした(><)どうすれば良いでしょうか? 日本語でGoogleで検索しても見つからないので、 とりあえずコマンドエラーのメッセージだけでも 英語に変える方法だけでも知りたいです。 libsslはRPMもないようで・・手詰まりです。

みんなの回答

  • nthnbslk
  • ベストアンサー率80% (8/10)
回答No.1

Gentooにlibssh2-0.14用のパッチがあります。 http://ftp.riken.go.jp/pub/Linux/gentoo/net-libs/libssh2/files/ $ tar xzvf libssh2-0.14.tar.gz $ cd libssh2-0.14 $ patch -p1 < [PATH_TO]/libssh2-0.14-banner-wait.patch $ patch -p1 < [PATH_TO]/libssh2-0.14-channel-failure.patch $ patch -p1 < [PATH_TO]/libssh2-0.14-configure.patch $ patch -p1 < [PATH_TO]/libssh2-0.14-peer-shutdown.patch $ ./configure --prefix=/usr $ make 以下略。 注1)[PATH_TO]はパッチが置いてあるディレクトリのPATH 注2)1番目と4番目のパッチが無くてもmakeは通るが、まぁ全パッチ    あてておくのがいいでしょう。

php4
質問者

お礼

パッチ教えていただきありがとうございました。 とりあえず2-0.13のsrc/MakefileのLIBSで /usr/lib64/を指定することで無事インストールできました。 Makefileが2つあったのにははまりましたが(^^;)

関連するQ&A