Подключение библиотеки mysqlclient в Linux

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Ответить
MonoLife
незнакомец
Сообщения: 6
Зарегистрирован: 23.11.2015 14:50:42
Откуда: Siberia

Подключение библиотеки mysqlclient в Linux

Сообщение MonoLife »

Kubuntu 12.04. Lazarus 4.2. Пробую использовать mysql.inc. Получаю ошибку /usr/bin/ld: cannot find -lmysqlclient.

Код: Выделить всё

/sbin/ldconfig -p |grep mysql  
libmysqlclient.so.18 (libc6) => /usr/lib/i386-linux-gnu/libmysqlclient.so.18

Как правильно настроить FPC для работы с библиотекой в моем случае.
Заранее благодарю.
Аватара пользователя
alexs
долгожитель
Сообщения: 4069
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Сообщение alexs »

Возможно поможет создание симлинка с именем libmysqlclient.so?
MonoLife
незнакомец
Сообщения: 6
Зарегистрирован: 23.11.2015 14:50:42
Откуда: Siberia

Сообщение MonoLife »

видимо, да. Где должен быть создан симлинк? В /usr/lib?
и, главное, как.. Ну.. как-то не приходилось их создавать :?
Аватара пользователя
Xenar
постоялец
Сообщения: 158
Зарегистрирован: 08.06.2011 12:54:07

Сообщение Xenar »

Зачем такие сложности.

в 12.04 просто ставим пакет

Код: Выделить всё

sudo apt-get install mysql-client

или сразу же

Код: Выделить всё

sudo apt-get install  libmysqlclient18
MonoLife
незнакомец
Сообщения: 6
Зарегистрирован: 23.11.2015 14:50:42
Откуда: Siberia

Сообщение MonoLife »

Уже установлена самая новая версия libmysqlclient18

Добавлено спустя 41 минуту 50 секунд:
ln -s /usr/lib/i386-linux-gnu/libmysqlclient.so.18 /usr/lib/lmysqlclient.so
нерабочая ссылка получается:(
Аватара пользователя
Xenar
постоялец
Сообщения: 158
Зарегистрирован: 08.06.2011 12:54:07

Сообщение Xenar »

Код: Выделить всё

export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/lib/i386-linux-gnu
startlazarus %f


попробуй так
MonoLife
незнакомец
Сообщения: 6
Зарегистрирован: 23.11.2015 14:50:42
Откуда: Siberia

Сообщение MonoLife »

хм..
-Fi/home/.../Mysql5Test/lib/i386-linux
-FU/home/..../Mysql5Test/lib/i386-linux/

почему путь создался такой?

Добавлено спустя 10 часов 44 минуты 39 секунд:
Руки у меня кривые, видимо...
Немного их выпрямив, попробовал сделать следующее:
1. в /etc/fpc.cfg убрал # со строки -Fl/lib;/usr/lib (т.е. добавил поиск библиотек в lib каталоге).
2. симлинки:

Код: Выделить всё

ln -s /usr/lib/i386-linux-gnu/libmysqlclient.so.18.0.0 /usr/lib/lmysqlclient.so
ln -s /usr/lib/i386-linux-gnu/libmysqlclient.so.18.0.0 /usr/lib/libmysqlclient.so
ln -s /usr/lib/i386-linux-gnu/libmysqlclient.so.18.0.0 /usr/lib/mysqlclient.so


Теперь при добавлении в uses mysql55 и компиляции проекта Lazarus не ругается! Правда, работу функций mysql.inc еще не проверял.
Всем спасибо за участие!

Добавлено спустя 7 часов 21 минуту 40 секунд:
PS: Проверил, API mysql функции работают нормально!
Ответить