[ milanvla @ 15.09.2004. 10:50 ] @
Kako poceti sa C++ programiranjem na Linuxu?
Konkretno imam Mandrake 9.1 i instalirao sam gcc

zanima me koji editor da koristim, gde da cuvam izvorne fajlove i slicno
[ filmil @ 15.09.2004. 14:15 ] @
Citat:
zanima me koji editor da koristim, gde da cuvam izvorne fajlove i slicno
Dobar editor je recimo Emacs. Takođe dobar editor je vim. Postoje okruženja koja se trude da sve objedine na jednom mestu. Iako nisu neophodna za rad, možeš da ih pogledaš. Recimo Kdevelop, mada ima i drugih, poput Eclipse. Neko drugi će sigurno moći da doda par komada. Tu su i poznati „mali“ editori kao gedit ili kate. Tu je i besmrtni nedit (još nije umro a ka' će, ne znamo:). Probaj nekoliko pa se odluči. Lični favoriti su Emacs i Eclipse.

Za primer kako izgleda mali ali funkcionalan program napravljen po konvencijama koje koristi Zadužbina za slobodni softver, pogledaj GNU Hello. Dok je filozofija same Zadužbine kontraverzna (pogledaj forum Advocacy), dotle verujem da malo ko može da zameri tehničkoj strani priče, tj. kvalitetu i organizaciji koda.

Na gornjoj adresi dat je primer Hello world programa, koji osim što ispisuje poznatu rečenicu takođe ilustruje nekoliko široko prihvaćenih rešenja: raspored datoteka u direktorijumima, obradu opcija s komandne linije, podršku za prevode na razne jezike, automatsku izradu Make datoteka za razne platforme i sl. Ukoliko ti nekada bude potrebno da čuvaš više revizija izvornog koda za neki (veći) program, pogledaj CVS.

f
[ mbabuskov @ 17.09.2004. 22:28 ] @
Citat:
Tu su i poznati „mali“ editori kao gedit ili kate. Tu je i besmrtni nedit (još nije umro a ka' će, ne znamo:). Probaj nekoliko pa se odluči. Lični favoriti su Emacs i Eclipse.


Ja bih jos dodao SciTe i jEdit.
[ mbabuskov @ 17.09.2004. 22:39 ] @
Trebao bi prvo da odlucis sta zelis da programiras.

1. Igre?

Sledi odabir SDL ili ClanLib ili OpenGL. OpenGL za 3D igre, ova druga dva za 2D. Sve tri biblioteke su cross-platform. SDL je ti daje samo interfejs za grafiku, zvuk, mrezu itd, ClanLib ti daje i sprajtove, mape, i slicno. SDL se lepo i lako kompajlira na svim kompajlerima, sa Clan-om ima gomila problema (narocito nekompatibilnost izmedju verzija).

2. Desktop aplikacije?

Ovde imas mnogo vise izbora, koji bi ja suzio na GTK, Qt i wxWidgets. Ako hoces da pravis aplikacije koje rade samo na Linuxu, slobodno biraj jedan od prva dva. GTK je brzi i potpuno free, Qt se placa za komercijalne aplikacija. Ako hoces cross-platform, tu ti je wxWidgets (postoje portovi i za GTK i Qt, ali nisu me bas zadovoljili: GTK ima puno bugova, a Qt nije free cak ni za open source programe)

3. Servere?

Onda samo neki tekst editor (iz kojeg eventualno moze da se kompajlira, mada je to najlepse ipak iz shell-a).

4. Nesto sasvim... cetvtro? ;)

[ Goran Rakić @ 17.09.2004. 23:15 ] @
GTK, odnosno gtkmm (posto se ovde prica o C++ jeziku) sasvim lepo radi na Windows i na MacOS X platformi (na mac-u preko X11 doduse). Takodje, interesantno je pomenuti i FLTK, mada zbog izgleda mozda nije za standardno aplikativno programiranje cesto predstvalja odlican izbor. QT, osim u slucaju potrebe izbegavati u sirokom luku...
[ Nedeljko @ 17.09.2004. 23:47 ] @
QT je pod GPL licencom za nekomercijalnu upotrebu na Linuxu, a u ostalim slučajevima (komercijalna upotreba, kao i upotreba na drugim OS) se plaća.
[ blablablabla @ 23.09.2004. 09:28 ] @
Citat:
QT, osim u slucaju potrebe izbegavati u sirokom luku...


Objasni ovo sto si rekao ?????

Nevidim razlog zbog cega bi neko zaobisao najbolju biblioteku sa jos boljom dokumentacijom i vrlo elegantnimAPI-jem.

Ako ja nesto ne znam .... prosvetli me
[ Dejan Lozanovic @ 23.09.2004. 13:04 ] @
Citat:
mbabuskov: Trebao bi prvo da odlucis sta zelis da programiras.
1. Igre?

Sledi odabir SDL ili ClanLib ili OpenGL. OpenGL za 3D igre, ova druga dva za 2D. Sve tri biblioteke su cross-platform. SDL je ti daje samo interfejs za grafiku, zvuk, mrezu itd, ClanLib ti daje i sprajtove, mape, i slicno. SDL se lepo i lako kompajlira na svim kompajlerima, sa Clan-om ima gomila problema (narocito nekompatibilnost izmedju verzija).


Ispravio bih te, SDL moze da se koristi i za pisanje 3D igara, koristi se OpenGL u kombinaciji sa SDL-om, s tim sto bi kod pisanaj igara trebalo dodati jos i OpenAL za realistican zvuk. Za ljude koji nisu obavesteni OpenGL (Open Graphic Library) je biblioteka koja se bavi samo grafikom pandam je Direct3D, dok mu SDL dodje pandam celom DirectX-u, a ako hocete da dobijete i 3d zvuk sa efektima (tipa doplerov efekat itd..) onda treba dodati i openAL. Primera radi Q3 je uradjen u kombinaciji OpenGL+OpenAL

Citat:
mbabuskov
2. Desktop aplikacije?

Ovde imas mnogo vise izbora, koji bi ja suzio na GTK, Qt i wxWidgets. Ako hoces da pravis aplikacije koje rade samo na Linuxu, slobodno biraj jedan od prva dva. GTK je brzi i potpuno free, Qt se placa za komercijalne aplikacija. Ako hoces cross-platform, tu ti je wxWidgets (postoje portovi i za GTK i Qt, ali nisu me bas zadovoljili: GTK ima puno bugova, a Qt nije free cak ni za open source programe)


Ja bi dodao FLTK takodje u celu pricu, jer je sampion po brzini. A kod je takodje portabilan.

Citat:
mbabuskov
3. Servere?

Onda samo neki tekst editor (iz kojeg eventualno moze da se kompajlira, mada je to najlepse ipak iz shell-a).

4. Nesto sasvim... cetvtro? ;)


Pa ne mora da koristi samo neki editor, moze da koristi i neko razvojno okruzenje, tipa eclipse, Kdevelop,Adjunta itd...
[ Dejan Lozanovic @ 23.09.2004. 13:17 ] @
Citat:
blablablabla: Objasni ovo sto si rekao ?????

Nevidim razlog zbog cega bi neko zaobisao najbolju biblioteku sa jos boljom dokumentacijom i vrlo elegantnimAPI-jem.

Ako ja nesto ne znam .... prosvetli me


Zavisi za sta pises program, ja ga takodje izbegavam kada je god to moguce, razlozi su sledeci:

-nemas free port za windows platformu, a da instaliras negde X server preko cygwin-a i da u njemu teras svoju aplikaciju nekako ne ide i komplikovano je krajnjem korisniku

-QT niji cisti C++, jer makro-i kao sto su QOBJECT koji se dodaju u klasu, label slot: itd... pa samim tim i prebacivanje koda na neki drugi toolkit je jako tesko.

- zbog onog prethodnog posto se C++ dobija predprocesiranjem, i ako imas negde greske u kodu jako je tesko debagovati jer moras da gledas taj generisani C++ kod i onda da vidis gde je greska pa da to prepravljas rucno kod sebe, a to odvaci mnogo vremena.

wxWidgets ja isto volim da izbegavam zbog onih makro-a, ali wxWidget je prirodni izbor svakom MFC programeru.

Ima jos jedan toolkit koji bi preporucio, a to je VDK on je baziran na GTK-u i za njega postoji VDK Builder, razvojno okruzenje slicno Kylix-u tj C++ Builderu.