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í
×
    dnes 13:33 | IT novinky

    Byl představen ICT Supply Chain Security Toolbox, společný nezávazný rámec EU pro posuzování a snižování kybernetických bezpečnostních rizik v ICT dodavatelských řetězcích. Toolbox identifikuje možné rizikové scénáře ovlivňující ICT dodavatelské řetězce a na jejich podkladě nabízí koordinovaná doporučení k hodnocení a mitigaci rizik. Doporučení se dotýkají mj. podpory multi-vendor strategií a snižování závislostí na vysoce

    … více »
    Ladislav Hagara | Komentářů: 0
    dnes 12:22 | Humor

    Nizozemský ministr obrany Gijs Tuinman prohlásil, že je možné stíhací letouny F-35 'jailbreaknout stejně jako iPhony', tedy upravit jejich software bez souhlasu USA nebo spolupráce s výrobcem Lockheed Martin. Tento výrok zazněl v rozhovoru na BNR Nieuwsradio, kde Tuinman naznačil, že evropské země by mohly potřebovat větší nezávislost na americké technologii. Jak by bylo jailbreak možné technicky provést pan ministr nijak nespecifikoval, nicméně je známé, že izraelské letectvo ve svých modifikovaných stíhačkách F-35 používá vlastní software.

    NUKE GAZA! 🎆 | Komentářů: 1
    dnes 06:00 | Zajímavý článek

    Nové číslo časopisu Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 162 (pdf).

    Ladislav Hagara | Komentářů: 0
    dnes 05:55 | IT novinky

    Sdružení CZ.NIC, správce české národní domény, zveřejnilo Domain Report za rok 2025 s klíčovými daty o vývoji domény .CZ. Na konci roku 2025 bylo v registru české národní domény celkem 1 515 860 s koncovkou .CZ. Průměrně bylo měsíčně zaregistrováno 16 222 domén, přičemž nejvíce registrací proběhlo v lednu (18 722) a nejméně pak v červnu (14 559). Podíl domén zabezpečených pomocí technologie DNSSEC se po několika letech stagnace výrazně

    … více »
    Ladislav Hagara | Komentářů: 8
    včera 18:33 | IT novinky

    Google představil telefon Pixel 10a. S funkci Satelitní SOS, která vás spojí se záchrannými složkami i v místech bez signálu Wi-Fi nebo mobilní sítě. Cena telefonu je od 13 290 Kč.

    Ladislav Hagara | Komentářů: 4
    včera 16:22 | Komunita

    Byl publikován přehled dění a novinek z vývoje Asahi Linuxu, tj. Linuxu pro Apple Silicon. Fedora 43 Asahi Remix s KDE Plasma už funguje na M3. Zatím ale bez GPU akcelerace. Vývojáře lze podpořit na Open Collective a GitHub Sponsors.

    Ladislav Hagara | Komentářů: 0
    včera 14:00 | IT novinky

    Red Hat představil nový nástroj Digital Sovereignty Readiness Assessment (GitHub), který organizacím umožní vyhodnotit jejich aktuální schopnosti v oblasti digitální suverenity a nastavit strategii pro nezávislé a bezpečné řízení IT prostředí.

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

    BarraCUDA je neoficiální open-source CUDA kompilátor, ale pro grafické karty AMD (CUDA je proprietární technologie společnosti NVIDIA). BarraCUDA dokáže přeložit zdrojové *.cu soubory (prakticky C/C++) přímo do strojového kódu mikroarchitektury GFX11 a vytvořit tak ELF *.hsaco binární soubory, spustitelné na grafické kartě AMD. Zdrojový kód (převážně C99) je k dispozici na GitHubu, pod licencí Apache-2.0.

    NUKE GAZA! 🎆 | Komentářů: 1
    17.2. 17:00 | IT novinky

    Podvodné reklamy na sociálních internetových platformách, jako je Facebook, Instagram nebo X, vytvořily loni v Česku jejich provozovatelům příjmy 139 milionů eur, tedy zhruba 3,4 miliardy korun. Proti roku 2022 je to nárůst o 51 procent. Vyplývá to z analýzy Juniper Research pro společnost Revolut. Podle výzkumu je v Česku zhruba jedna ze sedmi zobrazených reklam podvodná. Je to o 14,5 procenta více, než je evropský průměr, kde je podvodná každá desátá reklama.

    Ladislav Hagara | Komentářů: 10
    17.2. 15:44 | Nová verze

    Desktopové prostředí KDE Plasma bylo vydáno ve verzi 6.6 (Mastodon). Přehled novinek i s videi a se snímky obrazovek v oficiálním oznámení. Podrobný přehled v seznamu změn.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (18%)
     (6%)
     (0%)
     (11%)
     (27%)
     (3%)
     (4%)
     (2%)
     (12%)
     (27%)
    Celkem 905 hlasů
     Komentářů: 25, poslední 3.2. 19:50
    Rozcestník

    Dotaz: Kompilace Qt app, první díl seriálu

    20.6.2013 16:43 Adam Lasák
    Kompilace Qt app, první díl seriálu
    Přečteno: 341×
    Dobrý den, Základní problém, reinstaloval jsem si Ubuntu, nyní mám verzi 12.04. Začal jsem programovat v knihovně Qt, napsal jsem kód, který je zde uveden (nějaký check box, label, ...) no a jak jsem začal kopmilovat pomocí make (makefile už je, tj. qmake -project, qmake) vypsalo mi to následující chybu:

    g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -DQT_WEBKIT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++-64 -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I. -I. -o hello_world.o hello_world/hello_world.cpp g++ -m64 -Wl,-O1 -o qt hello_world.o main.o -L/usr/lib/x86_64-linux-gnu -lQtGui -lQtCore -lpthread main.o: In function `trida_check::trida_check(QWidget*)': main.cpp:(.text+0x0): multiple definition of `trida_check::trida_check(QWidget*)' hello_world.o:hello_world.cpp:(.text+0x0): first defined here main.o: In function `main': main.cpp:(.text.startup+0x0): multiple definition of `main' hello_world.o:hello_world.cpp:(.text.startup+0x0): first defined here main.o: In function `trida_check::trida_check(QWidget*)': main.cpp:(.text+0x0): multiple definition of `trida_check::trida_check(QWidget*)' hello_world.o:hello_world.cpp:(.text+0x0): first defined here collect2: ld returned 1 exit status make: *** [qt] Error 1

    Vím jen že, jak jsem před reinstalováním systému tenhle program (kód uveden níže) kopmiloval, vše pracovalo v klidu. Problém je zjevně na straně nějakých chybějících modulů tušim. Koukal jsem na nějaké anj poradny, stahoval jsem balíčky co tam doporučovali stáhnout a stálě nic, opravdu si už nevím rady. Jinak to že u hlaviček nejsou šipky si nevšímejte, nechtělo mi to sem povolit...
    #include QApplication
    #include QPushButton
    #include QLabel
    #include QHBoxLayout //slouží k zarovnání prvků, snažší než zadávat souřadnice
    #include QCheckBox
    
    class trida_check : public QWidget
    {
    	public:
    		/* 
    		 * Jako argument konstruktoru se předává rodič,
    		 * v případě že se jedná o hlavní okno tak žádný
    		 * rodič, v našem případě 0
    		*/
    		trida_check(QWidget* parent = 0);
    };
    
    trida_check::trida_check(QWidget*){
    	QHBoxLayout* radek = new QHBoxLayout(this);
    	QPushButton* tlacitko = new QPushButton(tr("Check this motherfucker!"));
    	QCheckBox* zaskrtavaci_pole = new QCheckBox();
    	
    	//tlačítko lze zamáčknout
    	tlacitko->setCheckable(true);
    	
    	//propojí objekty, třetí parametr je ukazatel na instanci objektu Qt, jehož slot se má spustit v reakci na signál.
    	connect(tlacitko, SIGNAL(clicked()), zaskrtavaci_pole, SLOT(toogle()));
    	connect(zaskrtavaci_pole, SIGNAL(clicked()), tlacitko, SLOT(toogle()));
    	
    	//přidá do lajny naše objekty
    	radek->addWidget(tlacitko);
    	radek->addWidget(zaskrtavaci_pole);
    	
    	//použije daný řádek (layout)
    	setLayout(radek);
    }
    
    int main(int argc, char** argv)
    {
    	//instance třídy Qapplication, předávají se argumenty shellu, musí být v každém GUI programu
    	QApplication app(argc, argv);
    	
    	QLabel win("Hello fucking world!"); //instance popisku
    	QPushButton tlacitko("&Quit"); //instance buttonou
    	
    	//qApp, ukazatel na třídu QApplication, connect, přetížená metoda na propojení třídy qApp a buttonu
    	//QObject:: se pak může i vynechat z důvodu častého výskytu
    	QObject::connect(&tlacitko, SIGNAL(clicked()), qApp, SLOT(quit()));
    	/*
    	 * Signál je zvláštní metoda, která nemá tělo a nevrací hodnotu, má pouze prototyp. 
    	 * Slot je metoda, která se zavolá v reakci na nějaký signál
    	 */
    	
    	trida_check objekt;
    
    	//zobrazení okna, pzn...nečekaně
    	tlacitko.show();
    	win.show();
    	
    	return app.exec(); //vracení výsledku metody app
    }
    
    

    Řešení dotazu:


    Odpovědi

    Řešení 1× (Luboš Doležel (Doli))
    20.6.2013 17:20 potato
    Rozbalit Rozbalit vše Re: Kompilace Qt app, první díl seriálu
    Slinkováváš dohromady main.o a helo_world.o, což jsou podle všecho objektové soubory dvou samostatných programů, takže není divu, že je pak main() (a kdeco dalšího) definováno dvakrát.
    20.6.2013 18:02 Adam Lasák
    Rozbalit Rozbalit vše Re: Kompilace Qt app, první díl seriálu
    Jéééjda, taková cipovina!! Dík moc.

    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.