A szerző (Pere László) művei amúgy nem ismeretlenek előttem, több nagyszerű könyvem is van tőle, témájukban (a unix/linux rendszerekről vagy programozásról unix/linux környezetben) messze ezek a könyvek viszik el a pálmát szerintem.
Ezt a /etc/sudoers file-ban tudod beállítani. Fontos, hogy ezt a file-t ne simán editáld, hanem a visudo paranccsal, mert nincs szintaktikai ellenőrzés a sudo-ban.
inkább KDE környezetes
Van Ubuntuhoz is KDE. De akár Fedorához is. Én éppen így használom, Fedorát KDE-vel.
Tulajdonképpen az ubuntuban is van root --a legelső létrehozott felhasználó használhatja a rendszer parancsokat-- azonban minden egyes ilyen művelet előtt meg kell erősítenie a jogosultságát (sudózás). Rést jelenthet a pajzson, hogy a sudo használata után --hogy ne kelljen mindig a parancsot és jelszót bepötyögni-- pár percig még él a rendszer admin jog.
Szerintem, otthoni gépre, otthoni használatra az egyik legjobb linux disztró.
(bár, ha nagyon alkalmazás centrikus lennék, akkor inkább KDE környezetes, rpm csomagkezelős linuxot használnék én is --mondjuk a Fedorát--, valójában gondolkodom is ilyen váltáson, de jelenlegi rendszeremmel is majdhogynem teljes mértékben elégedett vagyok)
Valami dereng, hogy Ubuntu szokványtalanul használja a root-ot. Ha jól sejtem, nincs root, csak valamelyik kitüntetett felhasználó sudo-val root jogot szerezhet. Én teljesen hagyományőrzően használok Fedora 8-at. Ha szükségem van karbantartásra, van root rendesen. Igaz, root-ként sohasem lépek be desktop-ra, legfeljebb terminálban root shell-t indítok.
Igazából nem le fagyott, hanem az alkalmazás nem zárta be az SDL által nyitott grafikus kijelzőt, a vezérlés valahogy nem jutott el a SDL_Quit() függvény meghívásáig. Nem tudom, miért. Bizonyos program részletek törlése után --a helyes lefutást követően-- visszatért az életbe, de vannak azonban megmagyarázhatatlan dolgai ennek az SDL világnak: pl a getchar() fv.-nek nyomhatsz Te akármit, az nem lép tovább... szóval érdekes ez az egész. Na mindegy. (a végén még NevemTeve topiktársnak leszek kénytelen igazat adni :) )
Amúgy nem rútként használom. Legalábbis nem a szónak az eredeti, unixos értelmében, mivel ubuntu alatt ui. nem a hagyományos formában van jelen ez a fogalom. (a mórickás programjaim meg nem hiszem, hogy olyan mélyen felszántanák a linux rendszert)
Ja, s külön köszönet Neked az SVGAlib supportért :))
viszont az elemi grafikai lehetőségekről, illetve ezek eléréséről egy rohadt szó sem esik bennük. Szerintem azért is van ez, mert ma már akik grafikával foglalkoznak, azok szinte mind 3D-znek, gyakorlatilag már a 2D-s játékokat is 3D-s apikon keresztül készítik, hiszen eleve a grafikus kártya hardvere a 3D grafikára van kihegyezve.
Ha karakteres módban már király programokat írsz, és grafikázni akarsz, akár elkezdhetsz OpenGL-ezni is (Linux alatt is megy). Vagy pl. ha megy a C++ is, és egy magasabb szintű 3D-s engine-t használnál ott van pl az ogre3d (www.ogre3d.org). (Ingyenes, és műkszik Linux alatt is.)
Tudom, tudom, nem a kérdésre válaszoltam, már húzok is el:)))
Mostanra már megismerhetted volna a Javas rajzolgatás alapjait, és lenne egy platformfüggetlen megoldásod... persze nem akarom elrontani a szórakozásodat...
Csak az a gond, hogy szinte az összes "linuxos C" -vel foglalkozó könyv, az unalomig ismétli a C alapjait... viszont az elemi grafikai lehetőségekről, illetve ezek eléréséről egy rohadt szó sem esik bennük. Ne kérdezd meg, hogy hány témába vágó könyvet bújtam végig az utóbbi napokban (volt köztük kifejezetten színvonalas is), de ehhez a ponthoz nem jutott el egyik sem.
Szóval, rendben tanulok, utána járok, de nagyon megköszönném, ha valami forrást is meg tudnál jelölni a számomra ehhez.
Alapvetően nem "C-ben" történik a dolog, hanem Windows API-ban, vagy Xlib-ben... vagy SDL-ben... vagy.... szóval valami újat mindenképpen kell hozzá tanulni...
Az SVGA-lib elavult, ezért inkább olyan megoldás kéne, ami X Windowban és MS Windows egyaránt működik. Ezt pedig úgy hívják, hogy Java. Bevallom, egy kicsit tanulni kell hozzá... Ja és pont színét lekérdezni nem lehet, mivel azt senki sem tárolja: ha a kép egyrésze érvénytelenné válik (például, mert valami letakarta az ablakot), a keretrendszer csak küld egy üzenetet a programodnak, hogy 'rajzold újra magad!' Arra viszont van mód, hogy a képet (bitmap-et) hozz létre a memóriában, és abba rajzolgass, azután, ha kész van, kitedd a képernyőre/file-ba.
Tehát az alap problémám: szeretnék EGY olyan függvényt használni, amivel kirakhatok EGYETLEN pixelt a képernyőre :) Hab lenne a tortán, ha lenne egy olyan függvényem is, amivel pl. lekérdezhetnék EGYETLEN pontnak a színét, a koordinátái ismeretében... szerintem nem bonyolult feladat, a commodore16nak sem jelentet leküzdhetetlen akadályt :)
Egyszerűen nem hiszem el, hogy ez alapból nem oldható meg C-ben, linux alatt. (nyílván megoldható, de fogalmam sincs hogy milyen fejállományra hivatkozzak, stb. stb.)
Azt hiszem, rájöttetek már, hogy elég núb vagyok, de viszont nem is szeretnék hülyén meghalni.
Szóval? C-ben mivel érhetek el minimális grafikai funkciókat? A válaszokat (az svgalib kivételével) előre is köszönöm!
/media/sdb3/Downloads/linux_unix/applets/svgalib-1.4.3/src/vga.c:3919:1: error: pasting "." and "HDisplay" does not give a valid preprocessing token /media/sdb3/Downloads/linux_unix/applets/svgalib-1.4.3/src/vga.c:3920:1: error: pasting "." and "HSyncStart" does not give a valid preprocessing token /media/sdb3/Downloads/linux_unix/applets/svgalib-1.4.3/src/vga.c:3921:1: error: pasting "." and "HSyncEnd" does not give a valid preprocessing token /media/sdb3/Downloads/linux_unix/applets/svgalib-1.4.3/src/vga.c:3922:1: error: pasting "." and "HTotal" does not give a valid preprocessing token /media/sdb3/Downloads/linux_unix/applets/svgalib-1.4.3/src/vga.c:3923:1: error: pasting "." and "VDisplay" does not give a valid preprocessing token
...és így tovább.
Tehát a makróban hivatkozik egy mmt nevű struktúrára, de hogy ebben a szintaktikában mit nem ért ez a nyomorult, fel nem foghatom... Elképzelhető, hogy hibás forráskódú csomagot hagytak fent az oldalon???
Figyelj csak, és a forrásból feltett dolgaid - mármint svgalib - nem valahol a /usr/local/lib alkönyvtárban vannak? Mert ezesetben kellene csinálnod a /etc/ld.so.conf.d directory-ba mondjuk egy local.conf nevű file-t az alábbi tartalommal:
/usr/local/lib
(Vagy a /etc/ld.so.conf file-ba ezt a sort belefaragni.) Aztán ezután ldconfig, majd fordítás. Csak egy tipp, hátha...
Mindezt azért gondolom, mert nekem ez van a /etc/ld.so.conf-ban, ami önmagáért beszél:
/usr/bin/ld: cannot find -lvgagl collect2: ld returned 1 exit status
Mindent úgy csináltam pedig, ahogyan a tutorialban írták :( (tar.gz -ből telepítettem make clean, make install, ldconfig parancsokkal)
Elválaltam egy műszakis srácnak egy feladat beadást C-ből, el is készült szépen, s gondoltam megtartom magamnak is (csak ugye a GNU C -ben nincs graphics.h könyvtár)
Egy paraméterekkel megadott, körről lefejtett evolvens görbét kellett ábrázolni, elég igényes is lett mire elkészült ( igaz sokat is szívtam vele)
Még soha nem programoztam linux környezetben, magát a linuxot is alig ismerem még. (ennek ellenére nem szívesen váltanék vissza )
Csomagkezelőből raktam fel eredetileg (a dev -vel együtt), de mivel úgy nem ment semmi, ezért telepítettem forrásból is. (tar.gz -ből)
Fogalmam sincs, mi baja lehet.
Igazából egy olyan fvkönyvtárra lenne szükségem, amiben a legminimálisabb pixel grafikai fügvények érhetők el, de azokat viszont elég gyorsan tudnám elérni.
(pont rajzolás, pont lekérdezése koordinátái alapján, aztán nagyjából ennyi...)
Ha ez esetleg nem menne, alternatív tippje lenne esetleg valakinek?