abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 18:55 | Humor

    Jak na webu co nejšíleněji zadávat datum? Jak to uživatelům co nejvíce znepříjemnit? V Bad UX World Cup 2025 (YouTube) se vybíraly ty nejšílenější UX návrhy. Vítězným návrhem se stal Perfect Date.

    Ladislav Hagara | Komentářů: 0
    včera 12:44 | Zajímavý software

    Společnost Collabora vydala (YouTube) na LibreOffice založený desktopový kancelářský balík Collabora Office. Pro Windows, macOS a Linux. Se stejným uživatelským rozhraním jako Collabora Online. Svůj desktopový kancelářský balík s rozhraním LibreOffice pojmenovala Collabora Office Classic.

    Ladislav Hagara | Komentářů: 1
    včera 12:00 | Nová verze

    Glen MacArthur vydal AV Linux (AVL) a MX Moksha (MXM) 25. S linuxovým jádrem Liquorix. AV Linux (Wikipedie) je linuxová distribuce optimalizována pro tvůrce audio a video obsahu. Nejnovější AV Linux vychází z MX Linuxu 25 a Debianu 13 Trixie. AV Linux přichází s desktopovým prostředím Enlightenment 0.27.1 a MX Moksha s prostředím Moksha 0.4.1 (fork Enlightenmentu).

    Ladislav Hagara | Komentářů: 0
    27.11. 17:55 | Nová verze

    Ubuntu pro testování nových verzí vydává měsíční snapshoty. Dnes vyšel 1. snapshot Ubuntu 26.04 LTS (Resolute Raccoon).

    Ladislav Hagara | Komentářů: 0
    27.11. 14:33 | IT novinky

    Zástupci členských států EU se včera shodli na návrhu, který má bojovat proti šíření materiálů na internetu zobrazujících sexuální zneužívání dětí. Nařízení známé pod zkratkou CSAM a přezdívané chat control mělo množství kritiků a dlouho nebyla pro jeho schválení dostatečná podpora. Pro schválení byla potřeba kvalifikovaná většina a dánské předsednictví v Radě EU se snažilo dosáhnout kompromisu. Návrh nakonec po dlouhých týdnech

    … více »
    Ladislav Hagara | Komentářů: 10
    27.11. 12:22 | Zajímavý software

    Britské herní studio Facepunch stojící za počítačovými hrami Garry's Mod a Rust uvolnilo svůj herní engine s&box (Wikipedie) jako open source. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT. Herní engine s&box je postavený nad proprietárním herním enginem Source 2 od společnosti Valve.

    Ladislav Hagara | Komentářů: 1
    27.11. 04:55 | Komunita

    Vývoj programovacího jazyka Zig byl přesunut z GitHubu na Codeberg. Sponzoring na Every.

    Ladislav Hagara | Komentářů: 4
    27.11. 04:44 | Komunita

    Stejně jako GNOME i KDE Plasma končí s X11. KDE Plasma 6.8 poběží už pouze nad Waylandem. Aplikace pro X11 budou využívat XWayland.

    Ladislav Hagara | Komentářů: 3
    26.11. 14:55 | IT novinky

    Poslanci Evropského parlamentu dnes vyzvali k výraznému zvýšení ochrany nezletilých na internetu, včetně zákazu vstupu na sociální sítě pro osoby mladší 16 let. Legislativně nezávazná zpráva, kterou dnes odsouhlasil Evropský parlament poměrem 493 hlasů pro ku 92 proti, kromě zavedení věkové hranice 16 let pro využívání sociálních sítí, platforem pro sdílení videí či společníků s umělou inteligencí (AI) vyzývá také k zákazu … více »

    Ladislav Hagara | Komentářů: 51
    26.11. 14:11 | Humor

    Doom v KiCadu nebo na osciloskopu? Žádný problém: KiDoom: Running DOOM on PCB Traces a ScopeDoom: DOOM on an Oscilloscope via Sound Card.

    Ladislav Hagara | Komentářů: 3
    Jaké řešení používáte k vývoji / práci?
     (34%)
     (47%)
     (20%)
     (18%)
     (23%)
     (16%)
     (24%)
     (16%)
     (18%)
    Celkem 415 hlasů
     Komentářů: 17, poslední 19.11. 21:57
    Rozcestník

    Dotaz: nedaří se mi kompilace

    21.7.2007 19:18 Taiko | Opava
    nedaří se mi kompilace
    Přečteno: 745×

    Zdravím, už umím zvládat "automatickou" deklaraci v IDE Kdevelop, avšak QtDesigner nic takového nemá. Namísto toho má uveden v manuálu postup, jak svůj projekt deklarovat v konsoli.

    Jenomže podle toho postupu se mi nedaří zkompilovat ani ty obyčejné HelloWorld prográmky.

    Postup uvedený v manuálu QtDesigneru spočívá v napsání do konzole těchto příkazů:
    qmake -project
    qmake
    make

    U provádění toho příkazu make to vypíše chyby:

    g++ -c -pipe -Wall -W -O2 -D_REENTRANT  -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_TABLET_SUPPORT -I/usr/share/qt3/mkspecs/default -I. -I. -I/usr/include/qt3 -o main.o main.cpp
    main.cpp:1:25: error: QApplication: No such file or directory
    main.cpp:2:24: error: QPushButton: No such file or directory
    main.cpp:13:4: warning: no newline at end of file
    main.cpp: In function ‘int main(int, char**)’:
    main.cpp:6: error: ‘QApplication’ was not declared in this scope
    main.cpp:6: error: expected `;' before ‘app’
    main.cpp:8: error: ‘QPushButton’ was not declared in this scope
    main.cpp:8: error: expected `;' before ‘hello’
    main.cpp:9: error: ‘hello’ was not declared in this scope
    main.cpp:12: error: ‘app’ was not declared in this scope
    main.cpp: At global scope:
    main.cpp:4: warning: unused parameter ‘argc’
    main.cpp:4: warning: unused parameter ‘argv’
    make: *** [main.o] Error 1

    Zdrojový kód HelloWorld programu je:

    #include QApplication
     #include QPushButton
    
     int main(int argc, char *argv[])
     {
         QApplication app(argc, argv);
    
         QPushButton hello("Hello world!");
         hello.resize(100, 30);
    
         hello.show();
         return app.exec();
     }

    Zkoušel jsem i HelloWorld prográmek s tímto kódem:

    #include kapp.h
    #include kmainwindow.h
    int main (int argc, char **argv)
    {
     KApplication a (argc, argv, "Hello KWorld!");
     KMainWindow *w = new KMainWindow();
     w->setGeometry(100, 100, 200, 100);
     a.setMainWidget(w);
     w->show();
     return a.exec();
    }

    A pak ještě i jiným způsobem. U všech způsobů to končí právě u toho příkazu make. Ale možná bude problém už i u příkazu qmake.

    Zkoušel jsem však i jiné další možnosti použití g++ (např. přímo z tutorialu tady na ABClinuxu - Začínáme Kprogramovat), ale zatím vždycky jsem ztroskotal.

    Prosím, napíšete mi tu nějaký zaručeně fungující způsob, jak mám tyhlety prográmky (a všechny další programy) zkompilovat? Anebo jestli si všímáte nějaké chyby, které jsem si nevšimnul, prosím, poradíte mi?

    Děkuji.

    Odpovědi

    21.7.2007 19:20 Taiko | Opava
    Rozbalit Rozbalit vše Re: nedaří se mi kompilace
    Omlouvám se ... v prvním odstavci jsem zaměnil slovo "kompilovat" za slovo "deklarovat". Samozřejmě tam má být "kompilovat".
    kozzi avatar 21.7.2007 19:24 kozzi | skóre: 55 | blog: vse_o_vsem | Pacman (Bratrušov)
    Rozbalit Rozbalit vše Re: nedaří se mi kompilace
    Nejak si nejsem jistej ale nemelo by ty includy byt uzavreny v zavorkach? Jinak pokud je mas uzavreny jen si to tu nenapsal tak stejne to vypada ze nemas spravne nastaveny promene prostredi QTDIR a jakou mas distribuci?
    Linux je jako mušketýři "jeden za všechny, všichni za jednoho"
    21.7.2007 20:32 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: nedaří se mi kompilace
    No nějak nevím ale "main.cpp:1:25: error: QApplication: No such file or directory" mluví za vše ne ?

    Prostě soubor QApplication nenašel takže buď máte nastavené špatné cesty k include adresáři s tím souborem nebo máte ten název špatně ?

    Nemá to být náhodou:
    #include <QApplication.h>
    
    nebo
    
    #include "QApplication.h"
    
    include soubory mají většinou příponu .h :-)

    A jinak co pohledat v manuálu ? Viz: Qt Tutorial - Chapter 1: Hello, World!
    /****************************************************************
    **
    ** Qt tutorial 1
    **
    ****************************************************************/
    
    #include <qapplication.h>
    #include <qpushbutton.h>
    
    
    int main( int argc, char **argv )
    {
        QApplication a( argc, argv );
    
        QPushButton hello( "Hello world!", 0 );
        hello.resize( 100, 30 );
    
        a.setMainWidget( &hello );
        hello.show();
        return a.exec();
    }
    21.7.2007 20:41 Taiko | Opava
    Rozbalit Rozbalit vše Re: nedaří se mi kompilace

    Hmm, při vytváření dotazu jsem nevěděl, jak tam napsat toto: <>

    Teďka už je to přímo nahoře v nabídce. Jinak nezkoušel jsem nikde předělávat žádné cesty. Předpokládám, že je to u toh příkazu g++. Hnedka to zkusím. Jinak někdo se ptal, jakou mám distribuci. Mám Kubuntu 7.04
    Luboš Doležel (Doli) avatar 21.7.2007 20:46 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: nedaří se mi kompilace
    Měl byste si ujasnit, zda programujete v Qt 3 nebo Qt 4. Váš kód odpovídá Qt 4 a vy to kompilujete s qmake pro Qt 3.
    21.7.2007 20:57 Taiko | Opava
    Rozbalit Rozbalit vše Re: nedaří se mi kompilace

    Aha, díky.

    Ale musím vůbec používat ten qmake? Nešlo by to všechno jenom tím příkazem g++ z konzole? Kde nebo jak se naučím bez problému používat příkaz g++ v konzoli? Zatím jsem nic nenašel.

    Luboš Doležel (Doli) avatar 21.7.2007 20:59 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: nedaří se mi kompilace
    qmake svým způsobem používat nemusíte, ale nevím, co tím chcete vyřešit.
    21.7.2007 21:17 Taiko | Opava
    Rozbalit Rozbalit vše Re: nedaří se mi kompilace

    Děkuji. Přivedl jste mě na správnou cestu. Mám nainstalovanou Qt3, ale v nápovědě Qt3Designeru jsem se nějak dostal k tutoriálu Qt4 ...

    Teď jsem si našel tutorial pro Qt3 a zkusil jsem ten qmake a make a tentokrát to proběhlo v pořádku. Ještě jednou moc moc díky.

    26.6.2008 02:25 johny
    Rozbalit Rozbalit vše Re: nedaří se mi kompilace
    Ja bych jenom poznamenal pro ty co to tu budou podobne jako ja hledat ze v ubuntu je qmake defaultne pro Qt3 a linkuje Qt3 knihovny, pokud chcete pouzit priklady z Qt4 je nutne pouzit qmake-qt4 v /usr/bin/ tim se vse vyresilo, mel jsem ten samy problem jako zakladatel vlanka

    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.