Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[MySQL, C++] undefined reference to `mysql_real_connect@32'

Ostatnio zmodyfikowano 2012-12-17 21:04
Autor Wiadomość
Artekp999
Temat założony przez niniejszego użytkownika
[MySQL, C++] undefined reference to `mysql_real_connect@32'
» 2012-12-17 16:34:52
Chcę się połączyć z moją bazą mysql, sciągnąłem odpowiednią bibliotekę MysqlServer.
Mam problem gdyż nie mogę skompilować kodu, wyskakuje ciągle błąd: undefined reference to ...
Próbowałem już ustawiać różne kombinacje jednak ciągle wyskauje ten błąd

Co jest źle zrobione?? Bardzo proszę o pomoc, gdyż sam sobie poradzić nie mogę :(

Wersja Code:Blocks 12.11
Biblioteka MySql Server 5.5

Dodaję to według poradnika dodawanie bibliotek
Project >> Build options

Search directores
Compiler
F:\Program Files\MySQL\MySQL Server 5.5\include

Linker
F:\Program Files\MySQL\MySQL Server 5.5\lib

Linker Settings
F:\Program Files\MySQL\MySQL Server 5.5\lib\libmysql.lib

Kod

C/C++
#include <winsock.h>
#include <windows.h>
#include <mysql.h>
static char * sql_host = "localhost"; /* host serwera MySQL */
static char * sql_username = "nazwa"; /* nazwa loginu by po³¹czyæ siê do serwera */
static char * sql_password = "haslo"; /* has³o */
static char * sql_base = "baza"; /* nazwa bazy */
static unsigned int sql_port = NULL; /* port na jakim odbiera/wysy³a serwer mysql */
static char * opt_socket = NULL; /* socket name */
static char * sql_db = "baza1"; /* database name */
static unsigned int sql_flags = 0;
static MYSQL * conn; /* WskaŸnik do po³¹czenia do MySQL */

int main() {
    conn = mysql_init( NULL );
    mysql_real_connect( conn, sql_host, sql_username, sql_password, sql_db, sql_port, opt_socket, sql_flags );
    mysql_select_db( conn, "nowa_baza" );
    mysql_query( conn, "zapytanie SQL" );
    mysql_close( conn );
    return 1;
}
P-71285
DejaVu
» 2012-12-17 18:38:43
Być może nie istnieje plik *.lib w katalogu, który wskazałeś.

/edit:
Poza tym przydałoby się abyś wymienił błędy linkera. W moim katalogu MySQL-a jest 6 plików *.lib i zapewne część z nich jest również wymagana do przeprowadzenia poprawnego procesu linkowania.
P-71311
kubawal
» 2012-12-17 18:42:26
To by mu pisało
No sush file or directory 'xxxx.lib'
 :)
P-71312
Artekp999
Temat założony przez niniejszego użytkownika
» 2012-12-17 19:14:30
Spróbuję jeszcze zainstalować starszą wersję Mysql server i Code::Blocks
Widziałem że pewien gościu miał takie same ścieżki i mu działało.

Ale mimo wszystko chce rozwiązać problem na tej wersji.

Chyba że macie jakiś sprawdzony sposób na MySql
P-71320
DejaVu
» 2012-12-17 19:18:24
Podaj błędy linkera...? Ponowna instalacja nic nie da.
P-71322
Artekp999
Temat założony przez niniejszego użytkownika
» 2012-12-17 19:26:28
undefined reference to `mysql_ini@4'
undefined reference to `mysql_real_connect@32'
undefined reference to `mysql_select_db@8'
undefined reference to `mysql_query@8'
undefined reference to `mysql_close@4'

edit
ja w katalogu mam 3 pliki lib
debug/mysqlclient.lib
mysqlclient.lib
libmysql.lib

może mam jakąś kijową wersje :(
P-71323
DejaVu
» 2012-12-17 20:26:40
Google mówią, że linkujesz złego liba. Powinieneś linkować "mysqlclient.lib"
P-71333
krzyk
» 2012-12-17 20:33:07
Prawdopodobnie masz liby dla MS Visual C++.
P-71337
« 1 » 2
  Strona 1 z 2 Następna strona