Моя программа зависит от libcurl.so.3, но в RHEL6 нет такого мягкого типа libcurl.so.3 ->libcurl.so.4 (моя программа может работать плавно при создании этой ссылки). Но есть такая мягкая ссылка: libcurl.so->libcurl.so.4.
Я хотел бы изменить SONAME of libcurl.so.3.0.0.0 непосредственно от libcurl.so.3 до libcurl.so. Затем я могу запустить свою программу на RHEL 6, не создавая софт-ссылку.
Возможно, мое решение глупо, но я думаю, что изучение того, как изменить двоичный файл напрямую, - это интересная вещь.
Tahnk вы за свой комментарий, devnull. возможно, я не сказал ясно.
$readelf -d libcurl.so.3.0.0
Динамический сегмент со смещением 0x303cc содержит 25 записей:
Тип тега Имя/значение
0x00000001 (NEEDED) Общая библиотека: [libssl.so.2]
0x0000000e (SONAME) Имя библиотеки: [ libcurl.so.3] --- > Я хотел бы изменить это на libcurl.so