Mám avast a dost pochybuju že tento kód
#include <stdio.h>
#include <stdlib.h>
int main()
{
printf("Hello world!\n");
return 0;
}
je nějak závadný :)
Mám avast a dost pochybuju že tento kód
#include <stdio.h>
#include <stdlib.h>
int main()
{
printf("Hello world!\n");
return 0;
}
je nějak závadný :)
Problém vyřešen. Stačilo vypnout antivirový program :/
Tak samotný EXE soubor mi na druhém PC funguje bez problémů, ale tady když EXE soubor spustím tak se nic nestane a vše se mi zasekne.
Tak tohohle jsem si předtím vůbec nevšiml. při kompilaci to vypíše takovou nenápadnou větu:
sorry - this program has been built without plugin support
Poradíte mi ?
Stále nic. Zkompiluji, spustím, otevře se command line a nikde ani řádek, tak musím ukončit ručně.
a stále stejná chyba.
* místo "table1" je "db1"
connection = mysql_real_connect(&mysql,"192.168.1.13", "user1", "heslo1","db1", 0, 0, 0);
Takto mám současný kód:
#include <stdio.h>
#include <stdlib.h>
#include <winsock.h>
#include <windows.h>
#include <mysql.h>
int main()
{
MYSQL_RES *result;
MYSQL_ROW row;
MYSQL *connection, mysql;
int state;
mysql_init(&mysql);
connection = mysql_real_connect(&mysql,"192.168.1.13", "user1", "heslo1","table1", 0, 0, 0);
if (connection == NULL) {
/* print the error message */
printf(mysql_error(&mysql));
return 1;
}
state = mysql_query(connection, "SELECT username FROM test WHERE id = 1");
if(state != 0 ) {
printf("ERROR");
return 1;
}
result = mysql_store_result(connection);
while( (row = mysql_fetch_row(result)) != NULL ) {
printf("username %s\n", (row[0] ? row[0] : "NULL"));
}
mysql_free_result(result);
mysql_close(connection);
return 0;
}
Opravdu už nevím co dělám špatně.
I když vytvořím připojení k databázi tak program stejně spadne se stejnou hláškou.
Aha, tak tam byl zakopanej pes. Díky
Ale naskýtá se další problém. Aplikace po spuštění spadne.
Process terminated with status -1073741510 (0 minute(s), 5 second(s))
Nastavil sem include všeho nezbytného přímo ze složky kde je nainstalován MySql C Connector
a Build Log vypadá následovně:
mingw32-gcc.exe -Wall -g -I"C:\Program Files\MySQL\MySQL Connector C 6.1\include" -c "D:\vyvoj\C Vyvoj\MySql1\main.c" -o obj\Debug\main.o
mingw32-g++.exe -L"C:\Program Files\MySQL\MySQL Connector C 6.1\lib" -o bin\Debug\MySql1.exe obj\Debug\main.o "C:\Program Files\MySQL\MySQL Connector C 6.1\lib\libmysql.lib"
obj\Debug\main.o: In function `main':
D:/vyvoj/C Vyvoj/MySql1/main.c:8: undefined reference to `mysql_get_client_info@0'
collect2.exe: error: ld returned 1 exit status
Process terminated with status 1 (0 minute(s), 0 second(s))
1 error(s), 0 warning(s) (0 minute(s), 0 second(s))
Tak opravdu nevím co dělám špatně
To se mi také párkrát povedlo, ale usoudil sem že mám něco špatně includováno tak sem začal znova :(
Samozřejmě, ale potom mi to napíše toto:
undefined reference to `mysql_get_client_info@0'
Zdravím
Snažím se vytvořit program, který se bude připojovat do MySql a tahat data.
Důležité je, že se mi nedaří includovat lib. knihovny. Toto je můj kód, napsaný v CodeBlocks ve Windows 10
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <mysql.h>
int main()
{
printf("MySQL verze: %s\n", mysql_get_client_info());
return 0;
}
Mám stažený a nainstalovaný MySQL Connector/C
V Project build options -> Linker settings -> Link libraries mám liknutou libmysql.lib (D:\vyvoj\C Vyvoj\includeLibs\libmysql.lib)
V Search directories -> Linker mám přidanou složku, ve které se nachází knihovna libmysql.lib a libmysql.dll (D:\vyvoj\C Vyvoj\includeLibs)
bohužel mi to stále vypisuje tuto hlášku:
D:\vyvoj\C Vyvoj\MySql1\main.c|4|fatal error: mysql.h: No such file or directory|
Pročetl sem různá fóra a zkoušel sem i do adresáře Windows a Windows/system32 přidat libmysql.dll. Tuto knihovnu jsem přidal i do adresáře se samotným programem, ale stále stejný výsledek.