はじめに
こんにちは。前回、匿名化ソフトを作りましたがpythonのバージョンが3.7の場合はexe化できたとしてもエラーが出て使えなかったと思います。実は、私の環境も3.7でexe化してもエラーが出て使えませんでした。
いろいろとググってみたのですが、いい解決方法がみつからず結局pyrhonのバージョンを3.6の環境を構築して対策しましたので、その方法を書いてみたいと思います。
仮想環境とは
そのそも仮想環境とは何なのかということですが、さまざまなライブラリー(numpyとか、openCv等)はいろんなライブラリーと共に使っていくわけなのですが、常に最新のバージョンに対応しているわけではありません。そのため、それぞれのライブラリーがきちんと動くバージョンの環境を構築しなくてはいけません。
今回のexe化もpyinstallerがpython3.7だときちんと動かないのでpython3.6の環境を作ってあげる。それも仮想環境を構築するという事です。
仮想環境を構築する
python3.6の環境を構築していきたいと思います。
まず、python3.6のバージョンが入っているか確認してみます。PyCharmを立ち上げて初めの画面の下、構成をクリックして「設定」に入ります。
左メニューの「pythonインタープリタ」を選択後、「プロジェクト・インタープリター」の右側下矢印を押して「追加」をクリック
左「Conda Environment」を選択「pythonのバージョン」をクリックして3.6があるか確認します。
この後はコマンドプロンプトでの作業になります。
コマンドプロンプトを立ち上げ
conda create -n 構築する名前 python = 3.6
のコマンドを打ちます。今回は名前をv3.6、pythonのバージョンを3.6で構築したいので最後にpython = 3.6と付け足します。
途中、anacondaの新しいバージョンがありますよと言われていますが・・・
新しく作る環境内に入るライブラリーが表示されています。pydicomが入っていないのがここで確認できます。環境構築後にインストールしましょう。
これで良ければ「y」を入力しエンターで環境が構築されます。
環境構築が無事に終わりました。新しい環境をアクティブにします。
コマンドは
conda activate 環境名 なので
conda activate v3.6
で新しい環境をアクティブにします。先頭に(v3.6)と入っているので環境がアクティブになっているのが確認できます。
そのまま、pydicomのインストールをしてしまいましょう。
pip install pydicom
でインストールです。
プロジェクトに仮想環境を適応
PyCharmに戻って、exe化のプログラムのプロジェクトを開きましょう。
「ファイル」で「設定」をクリック。
左「Conda Environment」を選択「既存の環境」右側の「…」をクリックします。anacondaをインストールしたフォルダから「env」を選択すると先ほど構築した環境名のフォルダがあります。その中の「Tools」「python.exe」を選択します。似たフォルダ「pythonw.exe」というフォルダもあるので間違えないように気を付けてください。
これで、「OK」をクリックして完了です。
さいごに
前回の、匿名化のプログラムが動かなかった方は前回の記事にそってexe化を試してみてください。きちんと動くプログラムが出来上がっていると思います。
おつかれさまでした。
環境
- windows10
- python3.6.1
- Anaconda custom(64-bit)
- PyCharm2020.2(Communication Edition)