LINUX.ORG.RU

как правильно компилять ? с либами


0

0

значит компиляю коиента к mysql
gcc myclient.c -L/usr/lib/mysql -I/usr/include/mysql -lmysqlclient

компиляется на ура но при запуске говорит неможу найти либу
libmysqlcient.so :-(
ну можно линк сделать в /usr/lib

можно компилять так
gcc myclient /usr/lib/mysql/mysqlclient.a

но он тогда либу вкомпиливает и мой клиент с 6543 байт увеличивается
до 55331 байта ЗЫ некрасиво :-(

А можно какнить сказать при компиляции чтоб оно само либу искало в mysql
точнее в /usr/lib/mysql ??

-Wl,--rpath -Wl,/usr/lib/mysql ili dobavit /usr/lib/mysql v ld.so.conf i skazat ldconfig ili vystavit LD_LIBRARY_PATH=/usr/lib/mysql vo vremya zapuska perviy sposob kazhetsya rabotaet ne vezde ... hotya ne uveren .

master
()

LD_LIBRARY_PATH :) зачем ломать голову. Или если есть права на ldconfig добавить путь к библиотеке. Или есть еще man dlopen, но это несколько нудно

anonymous
()

мда с динамичискими лиьбсами полный изврат !!! Санькс теперь хоть знать
как работает -- УЖАСНО

Про /etc/ld.so.conf - это понятно
я имею ввиду вот как правильно сделать инсталяшку

тоесть предложение либо компилять с /usr/lib/mysql/libmysqlclient.a

но инсталяшек тоесть при make install меню еще невсречались которые
юзали-бы ldconfig

еще варианты есть ?? ну хочется краиво :-)

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