pandasライブラリが絡むと「cx_Freeze」で正しく実行ファイルが作成できない??

Python

こんにちは、しらすです。

以前pyinstallerを使って実行ファイルを作る方法について説明しました(以下のリンク参照)。

しかし、このpyinstallerで作成した実行ファイルは、、、、めちゃくちゃサイズがでかい上に動作が超遅い。。。

ということで、他のものがないか探していたところ「cx_Freeze」がよさそうだということで試してみました。

結果

cx_Freezeでシンプルな処理は上手くいったが、pandasライブラリが絡むと上手くいかなかった。。。

試した履歴をメモ

まずはこちらのリンクを参考に実行してみました!以下のコードを実行ファイルにすべくトライスタート。

※importは実験的に入れており、以下のコードでは意味ないので気にしないでください

import os

print('hello')

通常環境でトライ

色々なライブラリが入っているいつもの環境でまずはトライしてみました。

すると、実行ファイル作成時にタイプエラーみたいなものが発生して、ファイルを作成できず。。。cx_Freezeを再インストールしたりもしましたが上手くいかず。。。。ということで次の策。

新しい仮想環境を作って実行してみる

Anacondaで仮想環境を作り、cx_Freezeの他、必要なライブラリだけいれて実行してみました。

今度はファイルの生成ができました!さらに実行してみると以下のように出力が出ています。

本題、pandasを含めて実行してみる

次にimportにpandasを追加して、上手く実行ファイルが生成できるか試してみます。

import os
import pandas

print('hello')

結果、実行ファイルの生成はできました

しかしファイルを実行してみると、mklファイルが読めないので実行できないとのこと。。。。

まとめ

その後色々サイトも探してみましたが、結局解決策を見つけることができませんでした。。。

誰か解決策をご存知の方がいらっしゃればぜひご教授ください。

コメント