私はCythonを使用して、私が持っているいくつかのPythonモジュールのコンパイル済み.soファイルを生成しています。python distutilsを使って、拡張モジュールを別のアーキテクチャにクロスコンパイルするにはどうすればよいですか?
from distutils.core import setup
from Cython.Build import cythonize
setup(
ext_modules = cythonize([
'MyModule1.py',
'MyModule2.py',
'MyModule3.py'
])
)
をしてから、コマンドpython3 setup.py build_ext --inplace
を使用してモジュールをビルド:outlined in the Cython documentationとして、あなたは次のようにsetup.pyファイルを作成することができます。
これは問題なく動作しますが、ホストマシンのアーキテクチャー(私の場合はx86_64)と一致するバイナリーを作成します。私はクロスコンパイルと環境がすでに持っている別のアーキテクチャ(armv7l)を対象にしたいと思います。それはpythonのdistutilsで行うことは可能ですか?延長上extra_compile_args
経由代替march
と関連するフラグで
私はあなたの最善の策はエミュレートされたアーキテクチャで仮想マシンを実行し、そこにすべてのツールをネイティブで利用できるようにすることだと思います。 – phd