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