abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 04:55 | Nová verze

    OpenJS Foundation, oficiální projekt konsorcia Linux Foundation, oznámila vydání verze 22 otevřeného multiplatformního prostředí pro vývoj a běh síťových aplikací napsaných v JavaScriptu Node.js (Wikipedie). V říjnu se verze 22 stane novou aktivní LTS verzí. Podpora je plánována do dubna 2027.

    Ladislav Hagara | Komentářů: 0
    dnes 04:22 | Nová verze

    Byla vydána verze 8.2 open source virtualizační platformy Proxmox VE (Proxmox Virtual Environment, Wikipedie) založené na Debianu. Přehled novinek v poznámkách k vydání a v informačním videu. Zdůrazněn je průvodce migrací hostů z VMware ESXi do Proxmoxu.

    Ladislav Hagara | Komentářů: 0
    dnes 04:11 | Nová verze

    R (Wikipedie), programovací jazyk a prostředí určené pro statistickou analýzu dat a jejich grafické zobrazení, bylo vydáno ve verzi 4.4.0. Její kódové jméno je Puppy Cup.

    Ladislav Hagara | Komentářů: 0
    včera 22:44 | IT novinky

    IBM kupuje společnost HashiCorp (Terraform, Packer, Vault, Boundary, Consul, Nomad, Waypoint, Vagrant, …) za 6,4 miliardy dolarů, tj. 35 dolarů za akcii.

    Ladislav Hagara | Komentářů: 9
    včera 15:55 | Nová verze

    Byl vydán TrueNAS SCALE 24.04 “Dragonfish”. Přehled novinek této open source storage platformy postavené na Debianu v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    včera 13:44 | IT novinky

    Oznámeny byly nové Raspberry Pi Compute Module 4S. Vedle původní 1 GB varianty jsou nově k dispozici také varianty s 2 GB, 4 GB a 8 GB paměti. Compute Modules 4S mají na rozdíl od Compute Module 4 tvar a velikost Compute Module 3+ a předchozích. Lze tak provést snadný upgrade.

    Ladislav Hagara | Komentářů: 0
    včera 04:44 | Nová verze

    Po roce vývoje od vydání verze 1.24.0 byla vydána nová stabilní verze 1.26.0 webového serveru a reverzní proxy nginx (Wikipedie). Nová verze přináší řadu novinek. Podrobný přehled v souboru CHANGES-1.26.

    Ladislav Hagara | Komentářů: 0
    včera 04:33 | Nová verze

    Byla vydána nová verze 6.2 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Přehled změn v příslušném seznamu. Tor Browser byl povýšen na verzi 13.0.14.

    Ladislav Hagara | Komentářů: 0
    včera 04:22 | Nová verze

    Byla vydána nová verze 30.0.0 frameworku pro vývoj multiplatformních desktopových aplikací pomocí JavaScriptu, HTML a CSS Electron (Wikipedie, GitHub). Chromium bylo aktualizováno na verzi 124.0.6367.49, V8 na verzi 12.4 a Node.js na verzi 20.11.1. Electron byl původně vyvíjen pro editor Atom pod názvem Atom Shell. Dnes je na Electronu postavena celá řada dalších aplikací.

    Ladislav Hagara | Komentářů: 2
    včera 04:11 | Nová verze

    Byla vydána nová verze 9.0.0 otevřeného emulátoru procesorů a virtualizačního nástroje QEMU (Wikipedie). Přispělo 220 vývojářů. Provedeno bylo více než 2 700 commitů. Přehled úprav a nových vlastností v seznamu změn.

    Ladislav Hagara | Komentářů: 0
    KDE Plasma 6
     (72%)
     (9%)
     (2%)
     (17%)
    Celkem 743 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: QT a MySQL driver

    12.3.2012 10:53 Fnenks | skóre: 4
    QT a MySQL driver
    Přečteno: 441×
    Zdravim, konecne jsem se v QT dostal k databazim, ale sekl jsem se hned ze startu. Kod je jednoduchy, ale bohuzel se mi program nechce pripojit.

    Dozvedel jsem se, ze musim nejdriv predkompilovat nejakej driver, bohuzel v tehle vecech jsem celkem lama, jedine co dokazu zkompilovat je hotovy program v QT Creator nebo VS2010. Pouzivam windows 7. Byl bych moc vdecny kdyby mi nekdo dal step-by-step navod, jak na to. Diky

    Řešení dotazu:


    Odpovědi

    12.3.2012 12:18 Fnenks | skóre: 4
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    Preinstaloval jsem mysql5.0 a zaskrtl jsem developer components, tzn ze se mi nainstalovaly slozky: include, lib. To byl predpokladam prvni krok, ale co delat dal to nevim :(
    12.3.2012 12:28 Ivan
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    Ty si kompilujes QTcko sam na Windows? Pak asi musis rucne nastavit promenne INCLUDE, PATH a LIB(anebo LIBPATH?) v MSVC command prompt. Pak spust configure.exe a povol kompilaci DB driveru.

    PS: pouzivas 32bit anebo 64bit mod? A mas placenou anebe Express verzi MSVC?
    12.3.2012 12:50 Fnenks | skóre: 4
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    VS jen Express verze, ale VS uz nepouzivam, pac QT ma vlastni vyvojove prostredi. QTcko si nekompiluju, jen pomoci neho kompiluju programy napsane v QT, jestli se ptas na tohle.
    12.3.2012 12:54 Fnenks | skóre: 4
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    Hmm tohle je celkem problem a zacinam mit obavy ze to nezvladnu. Umim syntaxi c++ a zaklady QT, ale to je vsechno. Co se tyce kompilace a tak, tak v tom vubec nemam zkusnosti. Dokonce mam tuseni ze ve Windows se to dela jinak nez na Linuxu, ale to jsem jen nekde postrehl, takze si nejsem jisty, pac ja ani nevim jak Linux vypada :D
    12.3.2012 13:08 Ivan
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    Kompilace QTcka je vice-mene v pohode, akorat to trva hrozne dlouho. Na netu najdes spoustu navodu. Otazka je, jestli to QT SDK, ktery se da stahnout z webu, obsahuje podporu pro MySQL. Na 100% jsem si jistej, ze podpora pro Oracle tam by default neni.

    BTW: to SDK je oficialne pro MSVC 2008, (verze 2010 jeste tusim neni podporovana).

    V QTcku je nejaky singleton SQLDriver(anebo jak se to jmenuje), ktery ti vrati iterator. Pomoci toho iteratoru zjistis jaky vsechny databaze podporuje tvoje instalace QT.

    12.3.2012 13:16 Fnenks | skóre: 4
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    Qt z počátku neobsahuje modul QMYSQL, ten si musim nekde zkompilovat, bohuzel nevim jak na to..

    QT obsahuje jen QSQLITE modul, s tim pracuju bez problemu.
    12.3.2012 13:53 Ivan
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    Hmm, to jsem taky nikdy nedelal. Zkompilovat cely QTcko pomoci MSVC Express 2010 neni zadnej velkej problem, na webu na to jsou navody.
    12.3.2012 17:58 Roman Došek | skóre: 17 | blog: flare
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    Jestli máš nainstalové Qt SDK, tak je postup dost jednoduchý, např.:
    Qt SDK v C:/QtSDK
    a MySQL v C:/MySQL
    Stačí oteřít Qt Command Prompt, který bývá součástí Qt SDK a obsahuje správně nastavené proměnné prostředí, v něm přejít do cesty kde je db driver, např.:
    cd C:/QtSDK/QtSources/4.7.4/src/plugins/sqldrivers/mysql
    potom pomocí qmaku vytvoříš makefily pro zkompilování ovladače:
    qmake "INCLUDEPATH+=C:/MySQL/include" "LIBS+=C:/MySQL/lib/libmysql.lib" CONFIG+=release mysql.pro
    a příkazem mingw32-make nebo nmake výsledek zkompiluješ, výhodnější je používat samozřejmě mingw, nmake se nevyplatí moc používat, pokud nemáš plné Visual Studio, pak jsou problémy s distribucí binárek
    12.3.2012 19:07 Fnenks | skóre: 4
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    QT SDK i MySQL mam nainstalovane v E:/

    db driver nemam nemam nikde, pouze qsqlited4.dll a qsqlite4.dll jsou v: e:\Programy\QtSDK\Desktop\Qt\4.7.4\mingw\plugins\sqldrivers\

    Nikdy jsem nekompiloval nic mimo QT Creator, takze vubec nevim co je makefile qmake, atd..

    qmake.exe soubor jsem nasel, tak jsem prilozil .bat soubor kde jsem napsal: http://codepad.org/zGPmY02c

    Vypis vypada takto: http://www.2i.cz/37bfd0fa29
    12.3.2012 19:09 Fnenks | skóre: 4
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    oprava: oboje mam nainstalovane E:/Programy
    12.3.2012 19:48 Roman Došek | skóre: 17 | blog: flare
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    Okey, máš Qt SDK, takže bys měl mít Qt Command Prompt, který najdeš v menu start->Qt SDK->Desktop->Qt Command. Nebo na začátek toho baťáku souboru přidej spuštění e:\Programy\QtSDK\Desktop\Qt\4.7.4\mingw\bin\qtenv2.bat.

    Na to, aby jsi zkompiloval ovladače pro databáze potřebuješ zdrojové kódy Qtčka, ty se dají doinstalovat přes utilitu SDKMaintenanceTool.exe, kterou najdeš v e:\Programy\QtSDK.

    Jakmile to budeš mít, tak můžeš přejít do adresáře e:\Programy\QtSDK\QtSources\4.7.4\src\plugins\sqldrivers\mysql

    a tam pak spustíš výše psané příkazy....výsledek by tedy měl vypada takto:
    e:\Programy\QtSDK\Desktop\Qt\4.7.4\mingw\bin\qtenv2.bat
    cd e:\Programy\QtSDK\QtSources\4.7.4\src\plugins\sqldrivers\mysql
    qmake.exe "INCLUDEPATH+=e:/Programy/MySQL/MySQL Server 5.5/include" "LIBS+=e:/Programy/MySQL/MySQL Server 5.5/lib/libmysql.lib" "CONFIG+=release debug" mysql.pro
    e:\Programy\MinGW\bin\mingw32-make.exe
    pause
    Nakonec ještě vytvoená dllka musíš zkopírovat do e:\Programy\QtSDK\Desktop\Qt\4.7.4\mingw\plugins\sqldrivers\
    12.3.2012 20:34 Fnenks | skóre: 4
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    diky, skvele napsana odpoved, jdu na to, pak napisu jak to dopadlo..
    12.3.2012 23:04 Fnenks | skóre: 4
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    Tak jsem se posunul zas o kousek dal, snad uz jsem blizko cile :D

    Doinstaloval jsem QTSources a na adrese e:\Programy\QtSDK\QtSources\4.7.4\src\plugins\sqldrivers\mysql jsem vytvoril 1.bat:

    e:\Programy\QtSDK\Desktop\Qt\4.7.4\mingw\bin\qtenv2.bat cd e:\Programy\QtSDK\QtSources\4.7.4\src\plugins\sqldrivers\mysql qmake.exe "INCLUDEPATH+=e:/Programy/MySQL/MySQL Server 5.5/include" "LIBS+=e:/Programy/MySQL/MySQL Server 5.5/lib/libmysql.lib" "CONFIG+=release debug" mysql.pro e:\Programy\MinGW\bin\mingw32-make.exe pause

    Spustil jsem a vypis byl: http://www.2i.cz/eb8b94be6d

    Dale jsi psal ze mam zkopirovat nejake dllka, ale ty jeste nemam nebo nevim kde jsou. Zkousel jsem spustit mysql.pro na adrese kde je 1.bat, ale nejde zkompilovat(vypise chybu)
    Řešení 1× (Fnenks (tazatel))
    12.3.2012 23:27 Roman Došek | skóre: 17 | blog: flare
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    Zkus namísto
    qmake.exe "INCLUDEPATH+=e:/Programy/MySQL/MySQL Server 5.5/include" "LIBS+=e:/Programy/MySQL/MySQL Server 5.5/lib/libmysql.lib" "CONFIG+=release debug" mysql.pro
    použít samostatně
    qmake.exe "INCLUDEPATH+=e:/Programy/MySQL/MySQL Server 5.5/include" "LIBS+=e:/Programy/MySQL/MySQL Server 5.5/lib/libmysql.lib" CONFIG+=release mysql.pro
    mingw32-make
    
    a
    qmake.exe "INCLUDEPATH+=e:/Programy/MySQL/MySQL Server 5.5/include" "LIBS+=e:/Programy/MySQL/MySQL Server 5.5/lib/libmysql.lib" CONFIG+=debug mysql.pro
    mingw32-make
    
    Měl by jsi z toho dostat několiv výstupů ve stylu :
    mingw32-make -f Makefile.Release mingw32-make[1]: Entering directory `C:/QtSDK/QtSources/4.7.4/src/plugins/sqldrivers/mysql' g++ -c -O2 -frtti -fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_DLL -DQT_NO_DEBUG -DQT_PL UGIN -DQT_SQL_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"c:\QtSDK\Desktop\Qt\4.7.4 \mingw\include\QtCore" -I"c:\QtSDK\Desktop\Qt\4.7.4\mingw\include\QtSql" -I"c:\QtSDK\Desktop\Qt\4.7.4\mingw\include" -I"c:\MySQL\include" -I"c:\QtSDK\Deskto p\Qt\4.7.4\mingw\include\ActiveQt" -I"release" -I"c:\QtSDK\Desktop\Qt\4.7.4\mingw\mkspecs\default" -o release\main.o main.cpp C:\QtSDK\Desktop\Qt\4.7.4\mingw\bin\moc.exe -DUNICODE -DQT_LARGEFILE_SUPPORT -DQT_NO_CAST_TO_ASCII -DQT_NO_CAST_FROM_ASCII -DQT_DLL -DQT_NO_DEBUG -DQT_PLUGI N -DQT_SQL_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"c:\QtSDK\Desktop\Qt\4.7.4\mi ngw\include\QtCore" -I"c:\QtSDK\Desktop\Qt\4.7.4\mingw\include\QtSql" -I"c:\QtSDK\Desktop\Qt\4.7.4\mingw\include" -I"c:\MySQL\include" -I"c:\QtSDK\Desktop\Q t\4.7.4\mingw\include\ActiveQt" -I"release" -I"c:\QtSDK\Desktop\Qt\4.7.4\mingw\mkspecs\default" -D__GNUC__ -DWIN32 ..\..\..\sql\drivers\mysql\qsql_mysql.cpp -o release\qsql_mysql.moc
    Výsledná dllka najdeš v podadresářích release a debug. Pokud ti kompilace vypíše nějakou chybu, pastni ji sem....
    Řešení 1× (Fnenks (tazatel))
    12.3.2012 23:43 Fnenks | skóre: 4
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    no, ani jeden ani druhy mi nevytvori vubec zadny vystup, a kdyz se pokusim zkompilovat mysql.pro tak to napise tyhle chyby: http://2i.cz/fb8b94be6d
    13.3.2012 00:04 Fnenks | skóre: 4
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    a nevadi nahodou to, ze qmake.exe je uplne nekde jinde?
    13.3.2012 00:10 Fnenks | skóre: 4
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    no tak jsem do tehle slozky zkopiroval qmake.exe z "e:\Programy\QtSDK\Desktop\Qt\4.7.4\mingw\bin\", spustil jsem ty *.bat soubory s prikazy, cos napsal a vytvorilo mi to 2 slozky a nejake soubory
    13.3.2012 00:31 Roman Došek | skóre: 17 | blog: flare
    Rozbalit Rozbalit vše Re: QT a MySQL driver

    Kopírování qmaku je nesmysl, to jde normálně bez toho...zkus ty příkazy prostě pastnout postupně do té Qt Command Prompt, bez baťáků. Otvírat mysql.pro ve qtcreatoru je zbytečnost, ten qmake ti vytvoří soubor Makefile, Makefile.Release|Debug a ty pak používá mingw32-make ke zkompilování.

    Pokud tam nemáš nějaké chyby, tak by z qmaku ani žádný výstup být neměl.

    13.3.2012 09:51 Fnenks | skóre: 4
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    u Qt Command Prompt mam ten problem, ze se nemuzu dostat z disku C na disk E. Prikazem "cd" se muzuu pohybovat jen na C, kdyz dam napr CD E:/ tak to nefunguje
    13.3.2012 10:22 Roman Došek | skóre: 17 | blog: flare
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    aktuální disk změníš napsáním E:
    13.3.2012 11:40 Fnenks | skóre: 4
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    aha oukej..

    Takze jsem vytvoril 2.bat s kodem:

    cd e:\Programy\QtSDK\QtSources\4.7.4\src\plugins\sqldrivers\mysql

    qmake.exe "INCLUDEPATH+=e:/Programy/MySQL/MySQL Server 5.5/include" "LIBS+=e:/Programy/MySQL/MySQL Server 5.5/lib/libmysql.lib"

    CONFIG+=release mysql.pro

    mingw32-make

    pause

    vypis byl: http://www.2i.cz/6b9a85af7c

    3.bat s kodem:

    cd e:\Programy\QtSDK\QtSources\4.7.4\src\plugins\sqldrivers\mysql

    qmake.exe "INCLUDEPATH+=e:/Programy/MySQL/MySQL Server 5.5/include" "LIBS+=e:/Programy/MySQL/MySQL Server 5.5/lib/libmysql.lib"

    CONFIG+=debug mysql.pro

    mingw32-make

    pause

    vypis byl: http://www.2i.cz/7a8b94be6d

    Vytvorily se prazdne slozky Release a debug a soubory: Makefile, Makefile.debug, Makefile.release, qsqlmysql_resource.rc, qsqlmysqld_resource.rc
    13.3.2012 11:41 Fnenks | skóre: 4
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    ty bat soubory jsem samozrejme otevrel v Qt Command Prompt
    13.3.2012 12:31 Roman Došek | skóre: 17 | blog: flare
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    CONFIG+=release mysql.pro je součástí příkazu, který začíná qmake.exe, celý příkaz dohromady má být:
    qmake.exe "INCLUDEPATH+=e:/Programy/MySQL/MySQL Server 5.5/include" "LIBS+=e:/Programy/MySQL/MySQL Server 5.5/lib/libmysql.lib" CONFIG+=release mysql.pro
    13.3.2012 12:50 Fnenks | skóre: 4
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    mam to spravne, jenom jak jsem to kopiroval jsem tak jsem dal omylem enter navic
    13.3.2012 13:32 Roman Došek | skóre: 17 | blog: flare
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    V tom případě už mě pouze napadá, že v adresáři MySQL/include nemáš hlavičkové soubory (měl by tam být mysql.h a asi 20 dalších) nebo je ta cesta k hlavičkovým souborům neúplná.

    Je vhodné vkládat úryvky z konzole nebo souborů do tagů, které je zvýrazní:pre, bloqoute nebo code..
    13.3.2012 13:51 Fnenks | skóre: 4
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    JDE TO! misto /Programy/MySQL/MySQL Server 5.5/ jsem vytvoril jednoslovnou slozku /aaa/ , tam jsem hodil include a lib a spustil jsem upravene .bat(y)

    Ted mam qsqlmysql4.dll a qsqlmysqld4.dll ve slozkach release a debug, to jsou predpokladam ty soubory co potrebuju..?
    13.3.2012 13:57 Roman Došek | skóre: 17 | blog: flare
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    Ano, oba ještě zkopíruj do e:\Programy\QtSDK\Desktop\Qt\4.7.4\mingw\plugins\sqldrivers\ a mělo by ti to fungovat.
    13.3.2012 14:04 Fnenks | skóre: 4
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    Oukej, diky, ze si se mnou mel trpelivost :D Jdu to vyzkuset..
    13.3.2012 14:33 Fnenks | skóre: 4
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    jeste jsem tam pro jistotu zkopiroval i oba *.a soubory

    Udelal jsem si tenhle program: http://codepad.org/l0q2nsS5 ale databaze se neotevre: db.open() vraci:0

    pokud vlozim hlavicku: #include < Q MYSQLDriver> //bez mezery program vypise tyhle chyby: http://codepad.org/ZMS1GnbW
    13.3.2012 14:49 Roman Došek | skóre: 17 | blog: flare
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    Bez toho includu je to správně, QSqlDatabase si sám includuje potřebné závislosti.

    Důvod proč ti to neotevře databázi bude nejspíš ve špatných přístupových údajích, celkem pochybuju že tam máš uživatele localhost s heslem root :)
    13.3.2012 14:56 Fnenks | skóre: 4
    Rozbalit Rozbalit vše Re: QT a MySQL driver
    je, mas pravdu, instaloval jsem novy mysql a username jsem vlozil taktez root misto localhost

    Uz to funguje, nemuzu tomu uverit :D
    13.3.2012 00:35 Roman Došek | skóre: 17 | blog: flare
    Rozbalit Rozbalit vše Re: QT a MySQL driver

    Pokud bys to chtěl sestavovat v qtcreatoru tak toho souboru musíš přidat tyhle řádky (do mysql.pro), ty udávají kde se mají hledat knihovny a hlavičkové soubory, bez těch ten ovladač nejde zkompilovat ani slinkovat dohromady.

    INCLUDEPATH+=e:/Programy/MySQL/MySQL\ Server\ 5.5/include
    LIBS+=e:/Programy/MySQL/MySQL\ Server\ 5.5/lib/libmysql.lib

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.