Cygwin64bitではopensslが動かない


Cygwin(64bit)のopensslパッケージが壊れていました。

$ apt-cyg install openssl
$ openssl
(反応なし)
$ echo $?
127
$ openssl --version
(反応なし)
$ echo $?
127

最新版のopensslを自前でビルドしてみたけどこれもダメでした。

$ wget http://www.openssl.org/source/openssl-1.0.1f.tar.gz
$ tar xvfz openssl-1.0.1f.tar.gz
$ cd openssl-1.0.1f
$ ./config
$ make

gcc -I. -I.. -I../include  -DOPENSSL_THREADS  -DDSO_DLFCN -DHAVE_DLFCN_H -DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -march=i486 -Wall -DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DRMD160_ASM -DAES_ASM -DVPAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM   -c -o cryptlib.o cryptlib.c
cryptlib.c:1:0: エラー: 選択した CPU は x86-64 命令セットをサポートしていません
 /* crypto/cryptlib.c */
 ^
cryptlib.c:1:0: エラー: 選択した CPU は x86-64 命令セットをサポートしていません
<builtin>: recipe for target 'cryptlib.o' failed
make[1]: *** [cryptlib.o] Error 1
make[1]: Leaving directory '/home/DK/src/openssl-1.0.1f/crypto'
Makefile:278: recipe for target 'build_crypto' failed
make: *** [build_crypto] Error 1

どうもこれは既知のバグようです。
http://openssl.6102.n7.nabble.com/openssl-org-3110-Adding-support-for-x86-64-Cygwin-td46131.html

v1.0.2で修正が行われているという話です。

これから検証してみます。