2

私はPyPyを使用していくつかのPythonコードをCコードに変換しています。私は以下のように非常に簡単なスクリプトを書きました:

def main():
    print "hello world!"

def entry_point(argv):
    main()
    return 0

def target(*args):
    return entry_point, None

それから私は使用しtranslate.py --source test.pyました。Cコードの生成は成功しました。makeこれらのコードを実行すると、実行可能ファイルが生成されますtest-c。ただし、を使用してこれらのコードでmain関数を見つけることができないため、greppypyによって生成されるコードのエントリポイントはどこにあるのでしょうか。読んでいただきありがとうございます。

4

2 に答える 2

2

それは間違っています。pypy_g_entry_point を grep します。この例では main() 関数がインライン化されている可能性が高いため、取得できません。レンダリングする場合は、 --inline-threshold=0 を変換パラメーターとして使用します。

于 2010-11-16T06:36:53.830 に答える
1

実際にはPythonコードにエントリポイントがないため、PyPyはおそらく「メイン」関数を提供していません。おそらく追加する必要があります

main()

ファイルの最後に。

于 2010-11-16T02:40:03.153 に答える