cx_Freezeでpythonスクリプトをアプリライクに実行できるようにする

Bookmark this on Google Bookmarks
Pocket

一度書いたファイルが消えたため、再挑戦。
今回は、せっかく書いたpythonスクリプトを、すぐに実行できる形に、また、他の人にも配りたいという願いから
cx_Freezeを用いたパッケージ化を行います。

この問題を解くのに必要な知識

cx_Freeze
pip
setup.py(といっても私もよくわからない・・・)

導入

まずは以下のコマンドでインストール

“`pip install cx_Freeze
“`

これで準備は完了です。

実際にパッケージ化してみる

パッケージ化したいpythonファイルを「hoge.py」とします
hoge.pyをお好きなディレクトリにブッコミ、(一番楽なのはcx_freezeを実行する階層と同じ場所だよね)
次のコマンドを実行します。

[code lang=text]
cxfreeze-quickstart
[/code]

ってこの話は、公式ドキュメントにいくらでも書いてあるので、僕の話がめちゃくちゃだったらそっち呼んでください
公式ドキュメント
そのあとは、ビルドアップまで情報を記入していきます
python
“`
Project name:
Version 1.0: #バージョンを入力
Description: #説明を入力
Python file to make executable from: #パッケージ化したいpyファイル!
Executable file name []: #上と同じ名前で結構です
(C)onsole application, (G)UI application, or (S)ervice [C]: #コンソールで動くやつならCでおk
Save setup script to [setup.py]: #セットアップpyに保存しますか?はい→y
Overwrite y [n]?: y
Setup script written to y; run it as:
python y build
Run this now [n]?: y
“`
このあと、ダララララララ!とビルドアップ処理が始まりますんで。
すぐに終わりますんで。
処理が終わったら、実行階層のbuildフォルダ(新しくできているはず)をのぞいて見ましょう
その中に、フォルダができているはずです。
hogeというexecファイルと、libやら、dylibやら格納されています
lib内には、python3モジュールがぶっこまれています。そのままに。
使い方は簡単
execファイルをダブルクリックするだけです。
これで、python hoge.pyと毎回ターミナルで打つ必要は無くなりました。
今日はココまで。