Tex, python, illusrator, VPSの学生ノート

latotex-blog

Python

cygwinからAnacondaのpythonを使おうと思って失敗した話

投稿日:











注意!解決できてません!!

いちいちAnaconda Promptから実行するのがめんどくさくなったので、
Cygwin(xterm)からうまくできないか探っていました。・・・がめんどくさくなったのでメモとして残しておきます。

スポンサーリンク

winptyからanaconda pythonを呼び出す

以下のサイトのやり方をまねてwinptyをconfigure&makeをしてみました。
https://yohhoy.hatenadiary.jp/entry/20161028/p1

$ ./configure
uname -s identifies a Cygwin environment.
uname -m identifies an x86_64 environment.
Found Cygwin/MSYS G++ compiler: x86_64-pc-cygwin-g++
Found MinGW G++ compiler: x86_64-w64-mingw32-g++
Writing config.mk
Commit info: git

普通にmakeするとエラーがでます。

src/shared/WindowsSecurity.cc:209:21:警告:moving a local object in a return statement
prevents copy elision [-Wpessimizing-move]
209 |       return std::move(sd);
    |
src/shared/WindowsSecurity.cc:209:21:備考: remove 'std::move' call

警告なので無視してもかまいませんが、気になる方は備考にあるようにsrc/shared/WindowsSecurity.ccの
'std::move'を消してしまえばエラーが消えます。
このエラー[-Wpessimizing-move]についてはこちらのサイト様に詳しく書いてあります。
https://yohhoy.hatenadiary.jp/entry/20161028/p1

エラーを取り除いた場合のmakeの表示は以下の通りです。

$ make
Creating directory build/mingw/
Copying src/shared/PrecompiledHeader.h to build/mingw/PrecompiledHeader.h
Compiling build/mingw/PrecompiledHeader.h
Creating directory build/agent/agent/
Compiling src/agent/Agent.cc
Compiling src/agent/AgentCreateDesktop.cc
Compiling src/agent/ConsoleFont.cc
Compiling src/agent/ConsoleInput.cc
Compiling src/agent/ConsoleInputReencoding.cc
Compiling src/agent/ConsoleLine.cc
Compiling src/agent/DebugShowInput.cc
Compiling src/agent/DefaultInputMap.cc
Compiling src/agent/EventLoop.cc
Compiling src/agent/InputMap.cc
Compiling src/agent/LargeConsoleRead.cc
Compiling src/agent/NamedPipe.cc
Compiling src/agent/Scraper.cc
Compiling src/agent/Terminal.cc
Compiling src/agent/Win32Console.cc
Compiling src/agent/Win32ConsoleBuffer.cc
Compiling src/agent/main.cc
Creating directory build/agent/shared/
Compiling src/shared/BackgroundDesktop.cc
Compiling src/shared/Buffer.cc
Compiling src/shared/DebugClient.cc
Compiling src/shared/GenRandom.cc
Compiling src/shared/OwnedHandle.cc
Compiling src/shared/StringUtil.cc
Compiling src/shared/WindowsSecurity.cc
Compiling src/shared/WindowsVersion.cc
Compiling src/shared/WinptyAssert.cc
Compiling src/shared/WinptyException.cc
Creating directory build/gen/
Updating build/gen/GenVersion.h
Compiling src/shared/WinptyVersion.cc
Compiling src/shared/OwnedHandle.cc
Compiling src/shared/StringUtil.cc
Compiling src/shared/WindowsSecurity.cc
Compiling src/shared/WindowsVersion.cc
Compiling src/shared/WinptyAssert.cc
Compiling src/shared/WinptyException.cc
Linking build/winpty-debugserver.exe
Creating directory build/libwinpty/libwinpty/
Compiling src/libwinpty/AgentLocation.cc
Compiling src/libwinpty/winpty.cc
Creating directory build/libwinpty/shared/
Compiling src/shared/BackgroundDesktop.cc
Compiling src/shared/Buffer.cc
Compiling src/shared/DebugClient.cc
Compiling src/shared/GenRandom.cc
Compiling src/shared/OwnedHandle.cc
Compiling src/shared/StringUtil.cc
Compiling src/shared/WindowsSecurity.cc
Compiling src/shared/WindowsVersion.cc
Compiling src/shared/WinptyAssert.cc
Compiling src/shared/WinptyException.cc
Compiling src/shared/WinptyVersion.cc
Linking build/winpty.dll
Creating directory build/unix-adapter/unix-adapter/
Compiling src/unix-adapter/InputHandler.cc
Compiling src/unix-adapter/OutputHandler.cc
Compiling src/unix-adapter/Util.cc
Compiling src/unix-adapter/WakeupFd.cc
Compiling src/unix-adapter/main.cc
Creating directory build/unix-adapter/shared/
Compiling src/shared/DebugClient.cc
Compiling src/shared/WinptyAssert.cc
Compiling src/shared/WinptyVersion.cc
Linking build/winpty.exe

これで使える!と思ったのですが、pythonと打ってもなにも表示されず・・・・

anacondaのパス設定に問題が?

もともとユーザー名に空白が入っていました。(このせいでCygwinのPATH設定にだいぶ苦労しました)

C:/Users/lato lato/Anaconda3

インストールし直して以下のパスに変更しました。またインストールする際にAnacondaをPATH環境変数に追加するにチェックをいれました。

C:/ProgramData/Anaconda3

すると・・・・

$ python
Python 3.7.6 (default, Jan  8 2020, 20:23:39) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32

Warning:
This Python interpreter is in a conda environment, but the environment has
not been activated.  Libraries may fail to load.  To activate this environment
please see https://conda.io/activation

Type "help", "copyright", "credits" or "license" for more information.
>>>

起動しましたが、activateができていないみたいです。
ちなみにこの状態で「winpty python」としても上と同じ表示がでました。

C:\ProgramData\Anaconda3\Scripts\activateのルートパスをcygwinのパス(/cygdrive/c/・・・・)に変更しC:\ProgramData\Anaconda3\Scripts\etc\profile.d\conda.shを~.bashrcのexport PATHにいれたりと試行錯誤していましたが結局のところ解決策は見つかりませんでした・・・・
やっぱり素直にAnaconda Promptを使った方が楽かなあ・・・?
進展があれば、お知らせします。


-Python

Copyright© latotex-blog , 2020 All Rights Reserved Powered by STINGER.