Windows 一応インストーラがあるのでソレ使ってもイイですが, MinGW で使うならコンパイルした方が良いかも?ってことで・・・
ちなみに, Linux の場合、バイナリがあるならいつもの方法で・・・。
aptitude install ruby1.9.3 <-- Debian など apt を使う場合 yum install ruby1.9.3 <-- CentOS など yum を使う場合
コンパイルする場合も
yum install openssl openssl-devel libffi
とかで, ライブラリ関係をインストール後
./configure --program-suffix=-1.9.3 make make install
すれば良い。後は、alternatives 使って切り替えれるようにしておくと便利
# update-alternatives --install /usr/bin/ruby ruby /usr/local/bin/ruby-1.9.3 \ 100 \ --slave /usr/bin/gem gem /usr/local/bin/gem-1.9.3 \ --slave /usr/bin/irb irb /usr/local/bin/irb-1.9.3 \ --slave /usr/bin/erb erb /usr/local/bin/erb-1.9.3 \ --slave /usr/bin/rake rake /usr/local/bin/rake-1.9.3 \ --slave /usr/bin/rdoc rdoc /usr/local/bin/rdoc-1.9.3 \ --slave /usr/bin/ri ri /usr/local/bin/ri-1.9.3 \ --slave /usr/bin/testrb testrb /usr/local/bin/testrb-1.9.3
必要そうなライブラリを mingw-get で適当にインストールする 以下のものはソースからインストールする yaml openssl fbopenssl curl
fbopenssl, curl とか入らないかも? まぁ、cURL は他でも使うので最新版入れてみた。
以下, コンパイル・インストール方法を記載していますが, include パスなどはご自分の環境に合わせて読み替えてください.
./configure --enable-static --disable-shared CFLAGS=-DYAML_DECLARE_STATIC make make install
sh ./config no-shared make make test make install_sw
make pushd test/makespnego make ./test.pl popd pushd test/parsespnego make ./test.pl popd
./configure --disable-shared --enable-FEATURE=yes --with-PACKAGE=yes --with-zlib=/usr/lib --with-ssl=/usr/local/ssl --with-gssapi --with-spnego=/usr/local/lib --enable-ipv6↓以下のようなオプションでコンパイルするよ!って表示されます.
curl version: 7.33.0 Host setup: i686-pc-mingw32 Install prefix: /usr/local Compiler: gcc SSL support: enabled (OpenSSL) SSH support: no (--with-libssh2) zlib support: enabled GSSAPI support: no (--with-gssapi) SPNEGO support: enabled TLS-SRP support: enabled resolver: default (--enable-ares / --enable-threaded-resolver) ipv6 support: enabled IDN support: no (--with-{libidn,winidn}) Build libcurl: Shared=no, Static=yes Built-in manual: no (--enable-manual) --libcurl option: enabled (--disable-libcurl-option) Verbose errors: enabled (--disable-verbose) SSPI support: no (--enable-sspi) ca cert bundle: no ca cert path: no LDAP support: enabled (winldap) LDAPS support: enabled RTSP support: enabled RTMP support: no (--with-librtmp) metalink support: no (--with-libmetalink) HTTP2 support: disabled (--with-nghttp2) Protocols: DICT FILE FTP FTPS GOPHER HTTP HTTPS IMAP IMAPS LDAP LDAPS POP3 POP3S RTSP SMTP SMTPS TELNET TFTPあとは, いつもどおり
make make install
./configure CFLAGS="-DYAML_DECLARE_STATIC -DREADLINE_STATIC" make make install
cd ext cd openssl ruby extconf.rb --with-openssl-include=/usr/local/ssl/include --with-openssl-lib=/usr/local/ssl/lib make make install