LINUX.ORG.RU

«Статическое» связывание с libstdc++


0

0

Коллеги,

буду признателен за помощь в решении следующей проблемы.

Есть небольшая программа, которая использует сторонние закрытые либы, так что ее нельзя слинковать -static (или я не знаю как). При этом необходимо сделать зависимость исполнимого файла от наличия в системе GNUтых динамических библиотек минимальной (потому что все это делается под Solaris, на котором этих библиотек может не оказаться, а таскать их за собой технически очень сложно). Со всеми либами удалось разобраться, поставив их в строку линковки не флажками -lXXX, а в виде libXXX.a. Со всеми - кроме libstc++. Вот libstdc++ таким образом также подцепляется, но в результате получается exeшник, который при загрузке дает bus error. Если линковать -lstdc++, или просто - командой g++, то получаемый exeшник работает, но, естественно, ему нужен libstdc++.so

Место действия - Solaris 8, SPARC. gcc-2.95.3.

Ровно та же технология под Linuxом работает (т.е. если линковать не -lstdc++, a libstdc++.a, то получается работоспособный exeшник, которому libstdc++.so не нужен).

Если у Вас есть рецепт для борьбы с этой проблемой, или соображения по этому поводу - поделитесь, пожалуйста!

Заранее спасибо.


Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.