powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Ошибки компиляции под gcc - Lib'ы для MySQL'я?
3 сообщений из 3, страница 1 из 1
Ошибки компиляции под gcc - Lib'ы для MySQL'я?
    #32852918
My
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
My
Гость
Есть сложнейшая программа test.c :

#include </usr/include/stdlib.h>
#include </usr/include/stdio.h>
#include </usr/local/include/sql.h>
#include </usr/local/include/sqlext.h>
#include </usr/local/include/sqltypes.h>
SQLHDBC SQL_Connection_Handle;
int main (int argc, char *argv[]) {
SQLDisconnect(SQL_Connection_Handle);
exit(0); }

При компиляции GCC 3.2.2 под FreeBSD 5.1 выдает ошибку:
gcc -o test test.c
/var/tmp//cc4aTTuZ.o: In function `main':
/var/tmp//cc4aTTuZ.o(.text+0x219): undefined reference to `SQLDisconnect'

GCC не может найти библиотек? Их навалом - шедшая с дистрибутивом МуСКУля, МуОДБЦ, ЮниксОДБС, Иодбц. Согласно "/sbin/ldconfig -r" библиотеки есть :

/sbin/ldconfig -r | grep odbc
268:-liodbc.3 => /usr/local/lib/libiodbc.so.3
269:-liodbcadm.3 => /usr/local/lib/libiodbcadm.so.3
270:-liodbcinst.3 => /usr/local/lib/libiodbcinst.so.3
276:-lodbc.1 => /usr/local/lib/libodbc.so.1
277:-lodbccr.1 => /usr/local/lib/libodbccr.so.1
278:-lodbcdrvcfg1S.1 => /usr/local/lib/libodbcdrvcfg1S.so.1
279:-lodbcdrvcfg2S.1 => /usr/local/lib/libodbcdrvcfg2S.so.1
280:-lodbcextras.1 => /usr/local/lib/libodbcextras.so.1
281:-lodbcinst.1 => /usr/local/lib/libodbcinst.so.1
282:-lodbcminiS.1 => /usr/local/lib/libodbcminiS.so.1
283:-lodbcmyS.1 => /usr/local/lib/libodbcmyS.so.1
284:-lodbcnnS.1 => /usr/local/lib/libodbcnnS.so.1
285:-lodbcpsql.1 => /usr/local/lib/libodbcpsql.so.1
286:-lodbcpsql.2 => /usr/local/lib/libodbcpsql.so.2
287:-lodbcpsqlS.1 => /usr/local/lib/libodbcpsqlS.so.1
288:-lodbctxt.1 => /usr/local/lib/libodbctxt.so.1
289:-lodbctxtS.1 => /usr/local/lib/libodbctxtS.so.1
290:-loplodbcS.1 => /usr/local/lib/liboplodbcS.so.1
291:-loraodbcS.1 => /usr/local/lib/liboraodbcS.so.1

/sbin/ldconfig -r | grep sql
search directories: /usr/lib:/usr/lib/compat:/usr/X11R6/lib:/usr/local/lib:/usr/local/lib/mysql:/usr/local/lib/kde3
271:-lsqlplus.1 => /usr/local/lib/libsqlplus.so.1
285:-lodbcpsql.1 => /usr/local/lib/libodbcpsql.so.1
286:-lodbcpsql.2 => /usr/local/lib/libodbcpsql.so.2
287:-lodbcpsqlS.1 => /usr/local/lib/libodbcpsqlS.so.1
296:-lmysqlclient.12 => /usr/local/lib/mysql/libmysqlclient.so.12
297:-lmysqlclient_r.12 => /usr/local/lib/mysql/libmysqlclient_r.so.12
298:-lmysqlclient.14 => /usr/local/lib/mysql/libmysqlclient.so.14
299:-lmysqlclient_r.14 => /usr/local/lib/mysql/libmysqlclient_r.so.14
300:-lmysqlclient.10 => /usr/local/lib/mysql/libmysqlclient.so.10

Пробую указать GCC необходимость подключения библиотек, но всякие варианты отвергаются :
gcc -l odbc -o test test.c
/usr/bin/ld: cannot find -lodbc

ЮниксОДБЦ, например, ставился так :
fetch http://www.unixodbc.org/unixODBC-2.2.10.tar.gz
tar zxf unixODBC-2.2.10.tar.gz
cd unixODBC-2.2.10
./configure --prefix=/usr/local --exec-prefix=/usr/local --includedir=/usr/local/include --enable-gui=no
make
make install
ls /usr/local/include | grep odbc
odbcinst.h
odbcinstext.h
uodbc_stats.h
cd ..
fetch http://www.unixodbc.org/unixODBC-2.2.10.tar.gz
tar zxf unixODBC-2.2.10.tar.gz
cd unixODBC-2.2.10
./configure --prefix=/usr/local --exec-prefix=/usr/local --includedir=/usr/local/include --enable-gui=no
make
make install
ls /usr/local/include | grep odbc
odbcinst.h
odbcinstext.h
uodbc_stats.h
cd ..
/sbin/ldconfig -R
/sbin/ldconfig -r

Пробовал откомпилировать 'clients' из дистрибутива МуСКУля - куча ошибок.
Может зря я связался с ОДБЦ, мне нужно на Ц без плюсов написать простую прогу для МуСКУля. Читал
http://dev.mysql.com/doc/mysql/ru/C.html
вроде проще и быстрее должно работать, но таже проблема с библиотеками.
Поделитесь упрощенным прототипом и скажите как библиотеки цеплять, чтобы ГЦЦ компилил.
...
Рейтинг: 0 / 0
Ошибки компиляции под gcc - Lib'ы для MySQL'я?
    #32853109
Фотография Хрен
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в дистрибутиве mysql должен быть mysql_config

Запускаешь его
mysql_config --libs и он тебе пишет бибки которые надо прицепить.
mysql_config --cflags и он пишет ключи для mysql которые нужны при трансляции

но это только относится конечно к чистому mysql клиенту без odbc
...
Рейтинг: 0 / 0
Ошибки компиляции под gcc - Lib'ы для MySQL'я?
    #32853147
sky2k
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в unixodbc есть аналогичный тулз

компиль так
g++ `odbc_config --libs --cflags` -o test test.c
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Ошибки компиляции под gcc - Lib'ы для MySQL'я?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]