Как собрать cython build_ext для linux на ma c? - PullRequest
2 голосов
/ 01 мая 2020

Я собрал свои модули Cython для работы с файлами на macOS, и он работает нормально. Можно ли создать такой файл для linux Speci c на MacOS?

Мое текущее решение - запустить контейнер python с установленными необходимыми модулями. Затем смонтируйте текущую папку в рабочий каталог в контейнере, выполните компиляцию внутри контейнера. Пока он работает нормально, но я ищу более простое решение, которое заключается в компиляции linux специфических c so файлов непосредственно в macOS.

Ответы [ 2 ]

1 голос
/ 10 мая 2020

То, что вы пытаетесь сделать, это «кросс-компиляция». Этот пост пытается ответить на вопрос о лучшем способе кросс-компиляции из Ma c в Linux со ссылками на некоторые (устаревшие) инструменты. Короче говоря - это не легко, и я бы не стал go таким образом, если бы не было действительно веской причины для этого.

Есть два инструмента, которые утверждают, что сделать этот процесс (несколько?) Проще:

Но, опять же, я не уверен, что оно того стоит.

1 голос
/ 09 мая 2020

Кажется, что очень мало требований, подобных тому, что я делаю для этого варианта использования. Здесь опубликуйте решение о том, что я делаю сейчас, и надеюсь, что оно может помочь кому-то, кто столкнется с той же проблемой.

Обычно я сталкиваюсь с контейнером docker с томом, смонтированным на моем диске, python код находится там. Затем я могу скомпилировать мои python файлы в контейнере, и я также могу получить мои скомпилированные .so файлы в моем локальном файле.

Одна команда добьется цели.

docker run -it -v $(pwd):/dist python:3.8-buster bash -c "pip3 install Cython==0.29.17 && cythonize -3 -i [YOUR PYTHON CODE ROOT Folder]/*.py" 
...