Могу ли я создать библиотеку .a для модуля или большую библиотеку .so для проекта, а не как отдельную .so для модуля с Cython? - PullRequest
0 голосов
/ 10 июля 2019

У нас есть огромный проект Cython, который производит много динамических .so библиотек при компиляции. Мы бы предпочли иметь одну статическую библиотеку .a, которая могла бы быть связана с отдельным исполняемым файлом. Однако я понятия не имею, как получить доступ к параметрам командной строки gcc при запуске модуля cythonize. Я рассмотрел параметры компиляции здесь , но любая поддержка настройки gcc кажется полностью отсутствующей, даже если сама командная строка даже выводится на консоль во время сборки.

Одна из работ, которая приходит мне в голову, - это написать обертку вокруг команды gcc в чем-то вроде bash и притвориться, что это «gcc» в командной строке. Он может перехватывать все вызовы и вести gcc по-своему.

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

...