Я работаю с API, который распространяется в виде файла dll / so, который мне нужно динамически связать с моей программой на python. Для этого я хочу использовать Cython.
В прошлом я мог статически связываться с dll. Это работает хорошо, за исключением того, что API поставляется в четырех различных вариантах, с теоретически бесконечно большим количеством пользователей, и пользователи должны иметь возможность компилировать их с любым именем, которое они хотят (Kinda как система плагинов). Из-за этого я не могу просто создать файл so / pxd, который статически связывает только одну библиотеку, или даже ссылки с их выбором.
Что мне нужно, так это уметь передавать имя so / dll в код Cython и заставлять его «импортировать» его. Я знаю, что это можно сделать с помощью ctypes через ctypes.cdll.LoadLibrary, но возможно ли такое на Cython? Я собираюсь использовать ctypes, чтобы сделать это?