Я написал общий libA.so . Моя программа P будет динамически загружаться libA.so (использует dlopen, dlsym ...).
Вот моя проблема:
В libA.so я должен использовать функции (например, fun1 () ) в статическом libB.a , но libB .a не скомпилирован с -fPIC
, и я не могу перекомпилировать libB.a , поэтому я не могу связать libB.a в libA. так .
Я попробовал ссылку libB.a в P (с -Wl, - whole-archive), чтобы позволить динамической загрузке ссылку fun1 () в libA.so при загрузке. Однако это не работает. И я почти уверен, что fun1 () находится в P (я проверил это с помощью: nm P | grep "fun1"
).
Как мне это сделать?
Заранее спасибо!