Pypy/rpythonを使用して、小さなスタンドアロン実行可能ファイルを作成できますか?
-
27-09-2019 - |
質問
(または、 "Pypy/rpythonを使用してPythonをC/C ++にコンパイル/翻訳することができますか Pythonランタイムを必要とせずに?")
私は、RpythonとそのPython、ランニングとコンパイルと翻訳でPypyを理解しようとしましたが、やや失敗しました。
仮説的なPythonプロジェクト(Windows用)があります。 Py2exeを使用することが(UPX後)に伴ういくつかのメガバイトではなく、100キロバイト(ONO)の順に、そのサイズを抑えたいと思います。 Pypyを使用できますか1 Python26.dllに依存しないスタンドアロン実行可能ファイルを作成する方法は何ですか?できれば、次のようなrpythonの制限に従う必要がありますか for
ビルトインタイプのみで作業しているのですか、それとも完全なPython構文ですか?
これができれば、PythonのCモジュールを直接使用できないことをほぼ確実に使用できないことを理解しています。
1 (尋ねる時代以来、状況はより明確になり、ツールチェーンのこの部分は、PypyよりもRpythonとしてより明確にブランド化されています。2010年にはそうではありませんでした。)
解決
はい、PypyはRpythonコードからスタンドアロン実行可能ファイルを生成できます。つまり、コードの作成に関しては、すべての厄介なrpythonルールに従う必要があります。 Pythonコードが箱から出して機能する可能性はまったくありません。既存のPythonコードを移植するのは通常楽しいことではありません。実行可能性はCほど小さいものではありませんが、たとえばBoehm GCを使用したRPYストーンターゲット(Pypy/翻訳者/目標から)は、ストリップ後64ビットで80Kです。