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í
×
    včera 18:55 | IT novinky

    Dnešním dnem lze již také v Česku nakupovat na Google Store (telefony a sluchátka Google Pixel).

    Ladislav Hagara | Komentářů: 2
    včera 18:33 | IT novinky

    Apple představil (keynote) iPad Pro s čipem Apple M4, předělaný iPad Air ve dvou velikostech a nový Apple Pencil Pro.

    Ladislav Hagara | Komentářů: 0
    včera 17:11 | Nová verze

    Richard Biener oznámil vydání verze 14.1 (14.1.0) kolekce kompilátorů pro různé programovací jazyky GCC (GNU Compiler Collection). Jedná se o první stabilní verzi řady 14. Přehled změn, nových vlastností a oprav a aktualizovaná dokumentace na stránkách projektu. Některé zdrojové kódy, které bylo možné přeložit s předchozími verzemi GCC, bude nutné upravit.

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

    Free Software Foundation zveřejnila ocenění Free Software Awards za rok 2023. Vybráni byli Bruno Haible za dlouhodobé příspěvky a správu knihovny Gnulib, nováček Nick Logozzo za front-end Parabolic pro yt-dlp a tým Mission logiciels libres francouzského státu za nasazování svobodného softwaru do praxe.

    Fluttershy, yay! | Komentářů: 0
    včera 13:11 | IT novinky

    Před 10 lety Microsoft dokončil akvizici divize mobilních telefonů společnosti Nokia a pod značkou Microsoft Mobile ji zanedlouho pohřbil.

    Ladislav Hagara | Komentářů: 2
    6.5. 21:33 | Komunita

    Fedora 40 release party v Praze proběhne v pátek 17. května od 18:30 v prostorách společnosti Etnetera Core na adrese Jankovcova 1037/49, Praha 7. Součástí bude program kratších přednášek o novinkách ve Fedoře.

    Ladislav Hagara | Komentářů: 5
    6.5. 21:11 | IT novinky

    Stack Overflow se dohodl s OpenAI o zpřístupnění obsahu Stack Overflow pro vylepšení OpenAI AI modelů.

    Ladislav Hagara | Komentářů: 1
    6.5. 17:55 | Nová verze

    AlmaLinux byl vydán v nové stabilní verzi 9.4 (Mastodon, 𝕏). S kódovým názvem Seafoam Ocelot. Přehled novinek v příspěvku na blogu a v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    6.5. 17:11 | IT novinky

    Před 50 lety, 5. května 1974 v žurnálu IEEE Transactions on Communications, Vint Cerf a Bob Kahn popsali protokol TCP (pdf).

    Ladislav Hagara | Komentářů: 0
    6.5. 13:44 | Zajímavý článek

    Bylo vydáno do češtiny přeložené číslo 717 týdeníku WeeklyOSM přinášející zprávy ze světa OpenStreetMap.

    Ladislav Hagara | Komentářů: 0
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (63%)
     (8%)
     (14%)
     (16%)
    Celkem 133 hlasů
     Komentářů: 9, poslední včera 22:07
    Rozcestník

    Dotaz: Jak na Gtk?

    27.3.2011 11:30 montecze
    Jak na Gtk?
    Přečteno: 811×
    Zdravím, mám takovou rozsáhlejší otázku, včera jsem se celý večer pokoušel sestavit primitivní aplikaci s grafickým výstupem, asi mnohým známé "Hello World", začínám od nuly, chtěl bych to psát v Gtk, hledal jsem, a koukám že někdo to Hellwordld píše C, někdo v pythonu a někdo dokonce v PHP, takže podle mého úsudku je Gtk asi jakási výstupní forma těchto jazyků?? Zkusil jsem tedy něco sesmolit z pár příkladů z C, ale všude už jaksi počítali s tím že zbytek věcí už umím, například to jak ten program poté taky spustit, mě ve finále zůstal nějaký textový soubor .cpp ,ale nevím jak dále s ním pracovat, jak ho otevřít, předpokládám že mi tam asi něco chybí. Další věc byla, že v nějakém článku psali, stáhněte si tuhle knihovnu, aby to ve výsledku šlo, v jiném článku po mě chtěli jinou, to je taky špatné, mám gnome, a rád bych aby to využívalo nějakou knihovnu která už tam standardně je. V tomto opravdu začínám, budu moc rád kdyby mi to někdo malinko objasnil, popřípadě kdyby zde umístil nějaký hotový příklad tak, aby to šlo spustit a bylo to funkční. Já si prohlédnu zdroják a doufám že to z něj alespoň zhruba pochopím. Děkuji mnohokrát.

    Odpovědi

    27.3.2011 11:59 chrono
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    V oficiálnom návode je aj to, ako sa programy pre Gtk+ zvyčajne kompilujú.
    27.3.2011 11:59 l4m4
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    Gtk asi jakási výstupní forma těchto jazyků?
    Gtk+ je knihovna. U knihoven v nízkoúrovňových jazycích (C, C++) je běžné, že mají rozhraní i pro jiné jazyky.
    Zkusil jsem tedy něco sesmolit z pár příkladů z C, ale všude už jaksi počítali s tím že zbytek věcí už umím, například to jak ten program poté taky spustit, mě ve finále zůstal nějaký textový soubor .cpp ,ale nevím jak dále s ním pracovat, jak ho otevřít, předpokládám že mi tam asi něco chybí.
    Hm, takže otázka: Umíš programovat v jakémkoli jazyce?

    Pokud ano, tak v kterém?

    Pokud ne, tak psaní rovnou programu s grafickým rozhraním nedoporučuji, bude to krušné a počítej, že výsledek budeš mnohokrát zahazovat a psát celý znovu. Přinejmenším se ale musíš pro nějaký jazyk rozhodnout.
    Další věc byla, že v nějakém článku psali, stáhněte si tuhle knihovnu, aby to ve výsledku šlo, v jiném článku po mě chtěli jinou, to je taky špatné, mám gnome, a rád bych aby to využívalo nějakou knihovnu která už tam standardně je.
    Jak se přesně jmenuje balíček s Gtk+, to závisí na distribuci, když ji nenapíšeš, těžko poradit přesně. Typické názvy jsou gtk2-devel a libgtk2.0-dev, každopádně by příslušný balíček měl mít v popisu Gtk+ 2 development.
    kdyby zde umístil nějaký hotový příklad tak, aby to šlo spustit a bylo to funkční
    Doufám, že by opravdu nespouštěl náhodnou binárku, kterou by ti někdo podstrčil v nějakém fóru. Takže dostaneš (a) zdroják (b) skript v interpretovaném jazyce.
    Já si prohlédnu zdroják a doufám že to z něj alespoň zhruba pochopím.
    Tak teď jsem zmaten. Používáš spokojeně pojmy jako zdroják. Víš přitom, o čem mluvíš, nebo ne? Z
    mě ve finále zůstal nějaký textový soubor .cpp ,ale nevím jak dále s ním pracovat, jak ho otevřít, předpokládám že mi tam asi něco chybí
    bych usuzoval, že vůbec, ale těžko říci.

    Zde:

    http://library.gnome.org/devel/gtk-tutorial/2.22/c39.html

    najdeš podrobný popis hello-world programu, včetně toho, jak se přesně zkompiluje do binárky. Je to základní Gtk+ tutorial a pokud jsi nějaký googlil, tak jsi ho nepochybně našel.
    27.3.2011 12:17 montecze
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    Hm, takže otázka: Umíš programovat v jakémkoli jazyce? Pokud ano, tak v kterém?

    Základy bashe, php pak ještě umím html/css i když to už programovací jazyk není :)

    Doufám, že by opravdu nespouštěl náhodnou binárku, kterou by ti někdo podstrčil v nějakém fóru. Takže dostaneš (a) zdroják (b) skript v interpretovaném jazyce.

    Když píši že nic neumím, ale chci se to naučit, tak nepředpokládám že mi někdo podstrčí tu nejtěžší formu ale naopak :)

    Tak teď jsem zmaten. Používáš spokojeně pojmy jako zdroják. Víš přitom, o čem mluvíš, nebo ne?

    Jako zdroják chápu obsah souboru, stáhnu si hotové řešení a podívám se do jeho "zdrojového kódu (např. tak že si ho otevřu v texťáku)" jak ho vytvořili a s jeho "zdrojovým kódem" budu dál pracovat, "zkoušet ho upravovat a koukat co to dělá" Když jsem tak koukal na to Hellworld který byl v C tak jsem zhruba pochopil co a jak tam je ze zkušeností s jinými jazyky. Děkuji. :)
    27.3.2011 15:29 chsajarsa | skóre: 16 | blog: V_hlouby_destneho_pralesa | Lovosice(Praha)
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    Nez zacnes psat graficky program v nejakem jazyce, mel by si nejdriv o tom jazyku neco vedet. Bouzel u C/C++ to zahrnuje o mnoho vice veci nez treba php, bash nebo tak. Aby si sprovoznil ten program mel by jsi vedet co to je a jak funguje kompilator, linker,...., coz neni soucast jazyka. Tedy bych zacal s pokusy na jednodusich prikladech a postupne pritvrzoval.
    ~ QED ~
    27.3.2011 16:06 l4m4
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    s jeho "zdrojovým kódem" budu dál pracovat, "zkoušet ho upravovat a koukat co to dělá"
    C je ovšem kompilovaný jazyk, takže mezi úpravou zdrojáku a spuštěním je zapotřebí program zkompilovat a sestavit (slinkovat) do spustitelné binárky. Nevím, zda je tato věc jasná.

    Každopádně Gtk+ tutorial obsahuje i návod ke zkompilování, který lze v zásadě použít i bez pochopení, co děláš. Pochopení lze získat, jak psal kolega, např. s pomocí Herouta.
    27.3.2011 17:04 montecze
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    Pátral jsem a přesně na toto jsem narazil. Nakonec jsme se vrátil zpátku k tomuto příkladu:

    http://library.gnome.org/devel/gtk-tutorial/2.22/c39.html

    - V texťáku jsme si vytvořil base.c - Do něj vložil následující:

    #include <gtk/gtk.h>

    int main( int argc, char *argv[] ) { GtkWidget *window; gtk_init (&argc, &argv); window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_widget_show (window); gtk_main (); return 0; }

    Dále jsem podle návodu požil příkaz:

    gcc base.c -o base `pkg-config --cflags --libs gtk+-2.0`

    [monte@localhost ~]$ cd Plocha [monte@localhost Plocha]$ gcc base.c -o base `pkg-config --cflags --libs gtk+-2.0` Package gtk+-2.0 was not found in the pkg-config search path. Perhaps you should add the directory containing `gtk+-2.0.pc' to the PKG_CONFIG_PATH environment variable No package 'gtk+-2.0' found base.c:1:21: error: gtk/gtk.h: Adresář nebo soubor neexistuje base.c: In function ‘main’: base.c:6: error: ‘GtkWidget’ undeclared (first use in this function) base.c:6: error: (Each undeclared identifier is reported only once base.c:6: error: for each function it appears in.) base.c:6: error: ‘window’ undeclared (first use in this function) base.c:10: error: ‘GTK_WINDOW_TOPLEVEL’ undeclared (first use in this function) [monte@localhost Plocha]$

    To mě trochu zaráží, oba dva balíčky které nevidí nainstalované mám. Dále: #include <gtk/gtk.h> odkazuje na další soubor - který nemám?

    Už je to docela zlý když nezvládnu dát nic dohromady ani podle návodu. :-X

    27.3.2011 17:30 chrono
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    Vyššie ti l4m4 písal, že potrebuješ aj devel balíček Gtk+ (v jeho názve bude pravdepodobne devel alebo dev, ale aj to písal).
    27.3.2011 17:40 montecze
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    No to je právě to zláštní. Když ho vyhledám v gui balíčkovacím manažeru, tak to napíše:

    Promiňte, ale následující balíček nelze vybrat:

    - libgtk+2.0_0-devel-2.20.1-1mdv2010.1.i586

    a když to zkusím v příkazové řádce:

    [root@localhost ~]# urpmi libgtk+2.0_0-devel-2.20.1-1mdv2010.1.i586

    Následující balíčky nelze instalovat, protože závisí na balíčcích,

    které jsou starší než instalovaná verze:

    libpixman-1-devel-0.20.0-1mdv2010.1

    libcairo-devel-1.9.14-0.2mdv2010.1

    libpango1.0-devel-1.28.0-1.2mdv2010.2

    libgtk+2.0_0-devel-2.20.1-1mdv2010.1 - tady to ukazuje že ho mám, a kdybych chtěl nekterý z techto balíčků odstranit tak to s sebou veme celé gnome a to nechci

    27.3.2011 17:53 chrono
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    Áno, ten devel balíček Gtk potrebuje aj iné devel balíčky, takže je nutné nainštalovať aj tie (pri urpmi sa o to tuším postará parameter --auto).
    27.3.2011 18:00 montecze
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    Bohužel, --auto akorat zajistilo to že se vše provede bez dotazování (ano/ne) ale bohuzel nic neřeší :(

    [root@localhost ~]# urpmi libgtk+2.0_0-devel

    Následující balíčky nelze instalovat, protože závisí na balíčcích,

    které jsou starší než instalovaná verze:

    libpixman-1-devel-0.20.0-1mdv2010.1

    libcairo-devel-1.9.14-0.2mdv2010.1

    libpango1.0-devel-1.28.0-1.2mdv2010.2

    libgtk+2.0_0-devel-2.20.1-1mdv2010.1

    Přesto pokračovat v instalaci? (A/n) a

    [root@localhost ~]# urpmi libgtk+2.0_0-devel --auto

    Následující balíčky nelze instalovat, protože závisí na balíčcích,

    které jsou starší než instalovaná verze:

    libpixman-1-devel-0.20.0-1mdv2010.1

    libcairo-devel-1.9.14-0.2mdv2010.1

    libpango1.0-devel-1.28.0-1.2mdv2010.2

    libgtk+2.0_0-devel-2.20.1-1mdv2010.1

    [root@localhost ~]#

    Já jsem si spíše všiml že už podobný problém někdo řešil, http://forum.mandrivalinux.cz/index.php?topic=3768.0 (rok 2005 :D:D:D:D:D )
    Josef Kufner avatar 27.3.2011 19:11 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    Asi bude jednodužší, když uděláš kompletní upgrade všeho.
    Hello world ! Segmentation fault (core dumped)
    27.3.2011 19:24 montecze
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    Tak zkoušel jsem různý věci, jak to přepsat, přeinstalovat nebo jinak nahradit a to bud šlo ale nic se nezměnilo, nebo hrozilo že se spolu s tím odebere celé gnome (jako závislosti), tak to nechám být, běží mi na tomto systému i nějaké webové služby a spousta dalšího co by se mi dělat znova nechtělo. Nainstaluju do virtualboxu ubuntu a tam uvidím. :)
    27.3.2011 19:52 saas
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    slax ci slackware maju pri full uz vsetko v sebe, tj. vsetky kompletne zavistlosti
    27.3.2011 20:19 chrono
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    To vyzerá na nejaký problém so zdrojmi balíčkov, takže najskôr by som sa pokúsil vyriešiť práve to.
    27.3.2011 20:35 l4m4
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    Otázka je, v jakém stavu je teď Mandriva 2010.1.

    Každpoádně počítač, kde běží webové služby, většinou není vhodný pro různé experimenty typu učit se programovat grafické aplikace...
    27.3.2011 20:48 montecze
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    No ano, po tom všem, čím si za ten půl rok tenhle system díky mě prošel si troufám o mandrivě říci, že je opravdu stabilní os :D btw. http://89.24.137.103/ ale je to určený spíše ke sdílení dat přes ftp atd..
    27.3.2011 22:04 chrono
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    V tom zozname je aj balík pre 2010.2, takže takmer určite sú zle nastavené zdroje (alebo tam "natvrdo" inštaloval balíky, ktoré nie sú vhodné pre nastavené zdroje).
    27.3.2011 22:26 montecze
    Rozbalit Rozbalit vše Re: Jak na Gtk?

    Ano já mám 2010.1 upgradovanou na 2010.2 a fungují mi balíčky pro obě dvě verze, ale to přestávám řešit. V ubuntu to už šlo jak má, tady je muj vysledek:http://img340.imageshack.us/img340/8752/snmekobrazovkyo.pngChci vám mnohokrát poděkovat, teď už se jenom učit, aspon vím že to jde! :D Chtěl bych takovéhle okno a jeho obsah by tvořilo html/css .. s tím už jsem se setkal s jednou aplikací v mandrivě (mandriva-galaxy) ... musím dál zkoušet :) 

    Josef Kufner avatar 27.3.2011 15:35 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    Gtk je napsané v C a pokud s Gtk, začínáš, tak začni v C (nikoliv v C++ ani čemkoliv jiném). Pokud nevíš co se souborem s příponou .c, tak se napřed nauč C (bez Gtk). Doporučuju knihu "Učebnice jazyka C" od Herouta.
    Hello world ! Segmentation fault (core dumped)
    27.3.2011 22:57 montecze
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    Ještě bych měl otázku, jak přeložím binárku zpátky do C?
    Josef Kufner avatar 28.3.2011 01:17 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    Nijak. Schovej si zdroják.
    Hello world ! Segmentation fault (core dumped)
    28.3.2011 13:15 montecze
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    Tak to je škoda :(, překládal bych si cizí programy a zkoumal je :D niméně, dekuji mnohokrát za vše.
    28.3.2011 13:33 l4m4
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    Ze které planety jsi spadl, že chceš programovat na Linuxu a nikdy neslyšel o open source?

    Pokud neinstaluješ nějaké proprietární šmejďárny, tak můžeš samozřejmě studovat zdrojové kódy kteréhokoli programu, který používáš.
    28.3.2011 19:35 montecze
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    Aha, takhle jsem nad tím nepřemýšlel. :D Ještě jedna hloupá otázka, kde ho najdu? Ve složce s programem předpokladam - ne, když je vše v binárce. Vzal jsem si jako příklad OpenOffice a hledal na jejich stránkách a bud neumím hledat nebo tam nic takového není.
    Josef Kufner avatar 29.3.2011 01:42 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    Nevím jak to mají ostatní distribuce, ale v Debianu stačí přidat/odkomentovat v /etc/apt/sources.list zdroje se zdrojovými balíčky (deb-src řádky) a pak jen apt-get source balicek. Jinak obvykle stačí navštívit web programu a hledat něco jako "pro vývojáře", "repositář" a podobně – obvykle jsou zdrojáky ke stažení někde za rohem.

    Pro začátek ale sáhni po něčem menším, nějakém jednoduchém programu. OpenOffice nebudou dobrým studijním materiálem.
    Hello world ! Segmentation fault (core dumped)
    29.3.2011 19:18 montecze
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    Ano, openoffice jsem uvedl jen jako příklad, no, kouknu se po tom- a uvidím, děkuji :)
    Pavel Stárek avatar 29.3.2011 20:41 Pavel Stárek | skóre: 44 | blog: Tady bloguju já :-) | Kolín
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    No, nechtěl jsem ale musím :-) . Nezdá se ti, že zrovna OpenOffice je docela velké sousto? Ale prosím, dle chuti každého soudruha, jak se říká :-) . Jestli by nebylo lepší, třeba pro začátek studovat něco jednoduššího?
    Kdo chce, hledá způsob; kdo nechce, hledá důvod.
    29.3.2011 22:19 montecze
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    Ale néééé podruhé nebo potřetí zde píši, že jsem openoffice uvedl jen jako příklad - kde jsem hledal ty "zdrojové kódy" nikoli že se je chytám upravovat, to je i celkem zřejmé když jsem začal předevčírem :-D
    29.3.2011 22:21 montecze
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    A zmůžu se doposud tak akorát na okno, popřípadě ještě s textem nebo tlačítky :-D
    27.3.2011 23:17 nemanja
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    Podle meho nazoru pokud chcete rychle a jednoduse vyvijet programy a pouzivat GTK+ nebo QT a pritom nic o tech rozhranich nevedet nejlepe je zkusit stesti s GAMBAS2. Je to program neco jako byl VisualBasic 6.0 od Microsoftu. Vyborny rychli a docela mocni nastroj. Je to vysokourovnovy jazyk zalozena na Basic-u. Dokonce kdyz zkompilujete soubor muzete vybrat pro kterou distribuci bude urcen rpm, deb atd..
    28.3.2011 10:49 l4m4
    Rozbalit Rozbalit vše Re: Jak na Gtk?
    Opravdu bys doporučil jazyk, kde se před cyklem deklaruje čítač konstrukcí
    Dim i As Integer
    ? Namísto normálního jazyka jako Python?

    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.