Добрый всем день.Друзья, есть программа, написаная на С под ОС freebsd.
Что она делает: соединяется с сервером БД, выполняет запрос.Вот код:
--------------------------------------------------------------
#include <mysql.h>
#include <stdio.h>main() {
MYSQL *pdb;
MYSQL_RES *res;
MYSQL_ROW row;char *server = "server";
char *user = "user";
char *password = "pass";
char *database = "dbname";
pdb = mysql_init(NULL);
if (!mysql_real_connect(pdb, server, user, password, database, 0, NULL, 0))
{
fprintf(stderr, "%s\n", mysql_error(pdb));
exit(0);
}if (mysql_query(pdb, "SELECT * FROM table1 WHERE status > 30"))
{
fprintf(stderr, "%s\n", mysql_error(pdb));
exit(0);
}res = mysql_use_result(pdb);
while ((row = mysql_fetch_row(res)) != NULL)
printf("%s %s\n", row[1], row[2]);mysql_free_result(res);
mysql_close(pdb);}
--------------------------------------------------------------компилирую таким образом:
cc -I/usr/local/include/mysql test.c -lmysqlclient -lsocket -lnsl -lm -lzв ответ такие ошибки:
prog.c:38:17: warning: no newline at end of file
/usr/bin/ld: cannot find -lmysqlclientПомогите пожалуйста решить данную проблему.
Заранее всем благодарен за ответы.
PS.
mysql-client 5 версии, ставил из портов.
[...]
>компилирую таким образом:
>cc -I/usr/local/include/mysql test.c -lmysqlclient -lsocket -lnsl -lm -lz
>
>в ответ такие ошибки:
>prog.c:38:17: warning: no newline at end of file
>/usr/bin/ld: cannot find -lmysqlclientНу не может он найти библиотеку эту. Попробуйте добавить -L/usr/local/lib
>[...]
>>компилирую таким образом:
>>cc -I/usr/local/include/mysql test.c -lmysqlclient -lsocket -lnsl -lm -lz
>>
>>в ответ такие ошибки:
>>prog.c:38:17: warning: no newline at end of file
>>/usr/bin/ld: cannot find -lmysqlclient
>
>Ну не может он найти библиотеку эту. Попробуйте добавить -L/usr/local/libдобавил -L/usr/local/lib/mysql
на -lmysqlclient ругаться пересталначал на:
lsocket
lnsl
lm
lz
>добавил -L/usr/local/lib/mysql
>на -lmysqlclient ругаться перестал
>
>начал на:
>
>lsocket
>lnsl
>lm
>lzВо-первых, как? Во-вторых, вы уверены, что все эти библиотеки нужны?
P.S. Кстати. Не нужно вас вручную все флаги и библиотеки указывать. Используйте `mysql_config --cflags` и `mysql_config --libs`
>[оверквотинг удален]
>>
>>lsocket
>>lnsl
>>lm
>>lz
>
>Во-первых, как? Во-вторых, вы уверены, что все эти библиотеки нужны?
>
>P.S. Кстати. Не нужно вас вручную все флаги и библиотеки указывать. Используйте
>`mysql_config --cflags` и `mysql_config --libs`Да, вы правы. Остальные библиотеки были не нужны.
Программа успешно откомпилировалась.
Благодарю за помощь !
:)