«Информация о версии недоступна» означает, что номер версии библиотеки ниже для общего объекта. Например, если ваш номер major.minor.patch равен 7.15.5 на компьютере, на котором вы создаете двоичный файл, а номер major.minor.patch - 7.12.1 на установочном компьютере, ld выведет предупреждение.
Это можно исправить, скомпилировав библиотеку (заголовки и общие объекты), которая соответствует версии общего объекта, поставляемой с вашей целевой ОС. Например, если вы собираетесь установить в RedHat 3.4.6-9, вы не хотите компилировать в Debian 4.1.1-21. Это одна из причин, по которой большинство дистрибутивов поставляются с определенными номерами дистрибутивов Linux.
В противном случае вы можете статически связать. Однако вы не хотите делать это с чем-то вроде PAM, поэтому вы действительно хотите установить среду разработки, соответствующую производственной среде вашего клиента (или, по крайней мере, установить и связать с правильными версиями библиотеки.)
Совет, который вы получаете для переименования файлов .so (с заполнением их номерами версий), вытекает из того времени, когда в библиотеках общих объектов не использовались символы версий. Поэтому не ожидайте, что игра со схемой именования .so.n.n.n поможет (во многом - это может помочь, если ваша система была перегружена).
Последний вариант будет компилироваться с библиотекой с другим второстепенным номером версии с использованием специального сценария связывания:
http://www.redhat.com/docs/manuals/enterprise/RHEL-4-Manual/gnu-linker/scripts.html
Чтобы сделать это, вам нужно написать собственный скрипт, и вам понадобится специальный инсталлятор, который запускает ld для общих объектов вашего клиента, используя этот скрипт. Это требует, чтобы ваш клиент имел gcc или ld в своей производственной системе.