Допустим, у меня есть динамическая библиотека a.so
.
Затем я строю b.so
против a.so
, только если a.so
присутствует на машине.
Затем я создаю исполняемый файл c
против b.so
.
Я надеялся забыть все о a.so
в c
Makefile
, но оказалось, что мне нужно добавить a
во флаги -L
или я получил неопределенную ссылку на символ a.so
во время ссылки c
.
Это нормально с динамической ссылкой или я что-то забыл?
a
, так и отb
, то он определенно требует некоторых (или всех) экспортируемых символов от обоих. Соответственно, вы должны связать их с обоими, чтобы эти необходимые символы были правильно разрешены. Для запуска приложения вам также понадобятся оба*.so
. - person Alexander Shukaev   schedule 10.04.2013