sagemath をcygwinで

  • sagemathは数学のアプリケーション
  • こちらからWindows用にダウンロードしてさくっと使えるのですが、追加のpython packageを入れようとすると:
    • sageshell を立ち上げて"pip --install hogePackage" とすればよいはずなのだが、openSSLがうまく行かずに失敗する
    • "pip --install hogePackage"はPyPIからダウンロードするコマンドなので、そこにopenSSLでアクセスできないだけなら、zipファイルをローカルに取得して、"sage --pip install ~/Downloads/packagename.zip”のようにすれば良いはずだが、今度は、コンパイラ問題でうまく行かない
  • sagemathをcygwin環境に入れるとうまく行くかも、ということで、こちらに沿ってやってみる
    • まず、cygwinこちらに沿って取ってきてローカルにインストールする
    • 何も考えずにcygwinをインストールし、cygwinを立ち上げれば、仮想環境
    • そこで、sagemathのcygwin環境セットアップのページ(こちら)に戻って、言われた通りに以下のコマンドを、cygwinコマンドラインに入力する
curl -OL https://rawgit.com/transcode-open/apt-cyg/master/apt-cyg
install apt-cyg /usr/local/bin
rm -f apt-cyg
apt-cyg install make m4 flex git gcc-core gcc-g++ gcc-fortran diffutils \
                  liblapack0 liblapack-devel zlib-devel libreadline-devel \
                  libiconv-devel libcrypt-devel openssl-devel gettext-devel \
                  python ccache
    • すると、wgetがないよ、とのエラーが出るので、こちらを参考に、cygwinのインストール exeファイルを再度実行して、途中に現れる、追加オプションでwgetを指定して、cygwin環境にwgetを追加する
    • そのうえでcygwinを立ち上げ、再度
apt-cyg install make m4 flex git gcc-core gcc-g++ gcc-fortran diffutils \
                  liblapack0 liblapack-devel zlib-devel libreadline-devel \
                  libiconv-devel libcrypt-devel openssl-devel gettext-devel \
                  python ccache
    • とやるとうまく行くので、cygwinインストール解説のoptionalは飛ばして
git clone --branch develop git://trac.sagemath.org/sage.git
cd sage
    • (sagemathのページにはないが)
cd sage
make
    • とする
    • すると、configureしてからじゃなきゃだめ、とのメッセージが出るので、そりゃそうだ、と思い直して
./configure
make
  • これでcygwin環境にて、sagamathのソースを入手し、コンパイルしてのインストールが終了...
  • なのだが、makeにものすごい時間がかかり、終わってみれば、エラーあり。。。
  • ただし、Cygwinのsageディレクトリ配下に 実行可能な sage コマンドが現れinteractive sageが立ち上がりはした。とはいえ、新たに pip install hogepackageは相変わらずうまく動かなかったので、目的は達成できなかったという残念な結果