Кросс-компиляция собственных расширений Python для C с помощью distutilscross, setup.py не примет аргумент '-x'

У меня есть рабочая кросс-компиляция Python, однако я попробовал кросс-компиляцию расширения py-smbus из i2c-tools с помощью distutilscross и не могу пройти через командную строку.

Документация ( https://pypi.python.org/pypi/distutilscross) предполагает, что это должно быть так же просто, как python setup.py build -x (после установки соответствующих переменных среды), однако, когда я запускаю эту команду, '-x' вызывает ошибку неверного аргумента.

Кто-нибудь знает, как это исправить?

2 ответа

Вероятно, это связано с тем, что файл setup.py использует distutils вместо setuptools. Если вы посмотрите в комментариях к сообщению Криса, у него есть быстрое решение этой проблемы:

python -c "import setuptools; execfile('setup.py')" -x build

http://whatschrisdoing.com/blog/2009/10/16/cross-compiling-python-extensions/

Что-то вроде этого подхода сработало для меня:

export CC=your-platform-triple-gcc
export LDSHARED="your-platform-triple-ld -shared"
python setup.py build
Другие вопросы по тегам