34

cx_freeze を使用して CPython ファイルを exe にコンパイルする方法は知っていますが、PyPy を使用して簡単なプログラムを Exe にコンパイルすることは可能ですか?

4

2 に答える 2

7

私の知る限り、PyPyインタープリターを使用してプログラムからEXEを作成する方法についての既成の方法やチュートリアルはありません。そして、物事を進めることは必ずしも簡単ではありません、私は恐れています。

原則として、PyPyの翻訳を使用してEXEファイルを取得するには、PyPyインタープリターを使用するか、独自のRPythonプログラムを作成する2つの方法があります(PyPyインタープリター自体はRPythonプログラムです。つまり、Pythonの制限付きサブセットを使用します)。

プログラムがRPythonの制限されたサブセットを使用し、依存関係がない場合は、pypy / translator/goalでtranslateスクリプトを使用することを検討できます。ここには多くのtarget*.pyファイルもあります。1つを取り、目的に合わせて変更します。まず、ここからPython関数の翻訳を試してみることをお勧めします。

http://doc.pypy.org/en/latest/getting-started-dev.html#trying-out-the-translator

プログラムがアプリケーションであり、外部パッケージに依存している場合は、最初に、プログラムがpypyで動作することを確認する必要があります。すべての外部ライブラリがサポートされているわけではありません。次に、targetpypystandaloneスクリプトを変更して、アプリケーションモジュールをロードすることを検討します。疑わしい場合は、pypy-devメーリングリストまたはirc.freenode.netの#pypyチャネルでヘルプを入手してみてください。

于 2012-06-10T08:13:54.057 に答える
-2

これはあなたのために働くかもしれないpy2exeソリューションです:compile.py

#!/usr/bin/env python
# Corey Goldberg

from distutils.core import setup
import py2exe
import sys

if len(sys.argv) == 2:
    entry_point = sys.argv[1]
    sys.argv.pop()
    sys.argv.append('py2exe')
    sys.argv.append('-q')
else:
    print 'usage: compile.py <python_script>\n'
    raw_input('press ENTER to exit...')
    sys.exit(1)

opts = {
    'py2exe': {
        'compressed': 1,
        'optimize': 2,
        'bundle_files': 1
    }
}

setup(console=[entry_point], options=opts, zipfile=None)
于 2012-05-25T03:06:00.770 に答える