У меня есть две сторонние библиотеки, которые иногда имеют одно и то же имя символа, экспортированного. Когда исполняемый файл загружается, ld обычно выбирает неправильный, и я получаю крах в результате. Я не могу сделать слишком много о содержании этих библиотек, так может быть, есть способ проинструктировать ld, как найти правильное перемещение?
OS - Solaris 10, моя программа построена autoconf/autotools/gcc, конфликтующими библиотеками являются libclntsh (часть драйвера Oracle) и OpenLDAP. К сожалению, я не могу использовать реализацию Oracle LDAP-клиента - ему не хватает многих функций OpenLDAP.
Отредактировано: Ссылка выглядит следующим образом: libclntsh.so- > A.so- > MAIN < -B.so < -libldap_r.so