Я пытаюсь создать общую библиотеку в Ubuntu Linux, которая зависит от libusb.
Я хочу статически связать libusb с моей общей библиотекой.
Итак, вы создали libusb как статическую библиотеку.
Теперь, когда я пытаюсь связать его с моей разделяемой библиотекой, компоновщик выдает ошибку, говоря, что я должен построить libusb, используя флаг -fPIC.
Справедливо.
Итак, я построил libusb с -fPIC, но затем я заметил, что размер .so стал значительно меньше, по-видимому, потому, что он больше не создавал статическую библиотеку.
Но я смог успешно собрать свою общую библиотеку с версией libusb -fPIC.
Но когда мое приложение пытается загрузить мою общую библиотеку, динамический загрузчик выдает следующую ошибку:
ошибка поиска символа: неопределенный символ: udev_new
Каким-то образом я хочу статически связать libusb с моей общей библиотекой, чтобы избежать подобных ошибок поиска символов, но я не могу найти правильную комбинацию параметров сборки gcc.
Может кто-нибудь помочь разобраться в этом?
Спасибо.