windowsでanaconda入れると、CUIはAnaconda Prompt(実質コマンドプロンプト)になるじゃないですか。
そんなの嫌だ!Linuxのコマンド使いたい、cygwin使いたい!って人向け(主に自分)の需要の少なそうな覚書です。
1. anacondaにパスを通す
cygwinの.bash_profileを編集する。
こういう感じ
ANA_PATH=/cygdrive/c/Anaconda3
export PATH=\$ANA_PATH:\$ANA_PATH/Library/bin:\$ANA_PATH/Scripts:$PATH
これで
$ which python
/cygdrive/e/OSS/Anaconda3/python
anacondaのpythonにパスが通った。
が、これでpythonを叩くと応答が返ってこない…
$ python
cygwinのterminalであるminttyっていうexeがネイティブのpython以外のpythonをたたくと固まるという既知のバグなんだそうです。
2. winpty入れる
なので、mintty.exeの代わりにwinpty.exeというものを入れて、cygwinのterminalをラップしてやる必要がある。
https://github.com/rprichard/winpty
からgit clone。
解凍先にcd してcygwinでmakeする。
$ git clone https://github.com/rprichard/winpty.git
$ cd winpty
$ ./configure
$ make
正常に完了すれば、winpty/buildにconsole.exe、winpty.dll、winpty-agent.exeができる
※ 予めcygwinでgit, make, gcc-g++, mingw64-x86_64-gcc-g++ などなどをインストールしておく
3 pythonコマンドをラップ
~/.bashrcを編集
winptyのインストール先が$GITだとすると
alias 'python'='$GIT/winpty/build/winpty.exe python'
alias 'ipython'='$GIT/winpty/build/winpty.exe ipython'
これで!anacondaのpythonをcygwinから叩けるようになりました。
$ python
Python 3.6.4 |Anaconda, Inc.| (default, Jan 16 2018, 10:22:32) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
※参考:http://suzukiyou.hatenablog.com/entry/20151209/1449622689