From: "NAKAMURA, Hiroshi" Date: 2010-06-21T17:46:15+09:00 Subject: [ruby-dev:41665] Re: ext/openssl and newer OpenSSL さっそくありがとうございます。 2010/6/21 Takahiro Kambe : >> というわけで、できれば戻したいと思っているのですが、上記void 〜系の定義が >> 入っていたOpenSSLのバージョンなど、わかるでしょうか。NetBSDのとある >> スナップショット、 >> だけであれば、もうコンパイルできなくてもいいかな、と思います。 > 残念ですが、「とあるスナップショット」というわけではなく、数日前に出た > NetBSD 5.1_RC3を含む NetBSD 5 系列は、このときのOpenSSLのバージョンで > ブランチが作成されているので、すべて該当することになります。:-( なるほど。それでは当面放置ですね。あとで経緯をコメントとして追記しておきます。 2008-11-02に入ったようなので、それ以前に取り込まれてたのですね。 http://cvs.openssl.org/filediff?f=openssl/crypto/hmac/hmac.h&v1=1.20&v2=1.21 # ちゃんとしたSecurity Officerのいるところは強いなー。 どうでもいい話ですが、なんでこんな話を蒸し返したかというと: 1. 64bitマシンを手に入れた。 2. Ubuntu 10.04を入れた(openssl 0.9.8k+) 3. /usr/local/sslにopenssl 1.0.0aを入れた 4. --with-openssl-dir=/usr/local/sslでruby_1_8をコンパイルしたら、 openssl_missing.*の↑のところでコンパイルエラー。 もちろん悪いのは私で、ヘッダファイルは1.0.0a、リンクするライブラリは0.9.8k+、 という状況にしてしまったせいでした。何も考えずにopenssl 1.0.0aをインストールすると、 ライブラリは/usr/local/ss/lib64に入るので、 --with-openssl-include=/usr/local/ssl/include --with-openssl-lib=/usr/local/ssl/lib64 にしないといけなかった。 で、この(正常でない環境での)コンパイルエラーが、上記の定義ズレによるものだった、 という経緯でした。素人でもなければハマらないレアケースなので、放置でよいと思います。