Hogy lehet gnome környezetben ablakos alkalmazásokat készíteni?

Fórumok

Sziasztok!

Érdekelne, hogyan lehet GNOME környezetben olyan programot készíteni - ha lehet c/c++ nyelven - , ami szépen egy ablakot nyit magának és ott fut, felül menüsor... Tudna nekem mondani valaki vlmi jó oldalt, tutorialt, könyvet, ahol ezeknek utána tudnék nézni? A GUI erre való?

Előre is köszönöm a segítséget!

Token

Hozzászólások

glade, gtk - ezeknek nezz utana.

"Tedd vagy ne tedd, de ne probáld"

A Glade által generált C kód maga a halál, nehéz tovább bővíteni, vagy alakítani, a kényszermegoldásokról ne is beszéljünk. Nem véletlenül vették ki az újabb Glade -ből a kódgenerálást, mert teljesen felesleges.
A Glade által generált XML állomány nagyon szépen használható a Libglade segítségével, sőt a nemrég megjelent GTK 2.12 már tartalmaz egy olyan eszközt, amely segítségével képes pl. az átkonvertált Glade XML -t betölteni, GtkBuilder a neve.

-----
"Egy jó kapcsolatban a társunkat az ő dolgában kell támogatni, nem a miénkben."

Ha inkább C++ áll közelebb, akkor Gtkmm.
Én ebben kézzel írtam ilyen menüs ablakos csodát vagy 2 éve.
Nem volt túl megerőltető.
De a glade tisztább szárazabb biztonságosabb érzés...
Csak itt libglademm a te barátod.

A gtkmm oldalon van tutorial.

"...handing C++ to the average programmer seems roughly comparable to handing a loaded .45 to a chimpanzee."
-- Ted Ts'o

Engem is érdekelne a téma, pl, ami kell nekem hirtelen:
- JPEG kép letöltése netről és megjelnítése
- Teljes képernyős mód
- Autómatikus indítás, bizonyos felhasználónál, ne látszódjanak a gnome menük, ne lehessen hozzáférni az alaprendszerhez.

Az én megoldásom erre igy nez ki:
~/.xinitrc berakod mit inditson, egy metacity boven eleg (nem kell teljes gnome-session). + a program amit inditani szeretnel.
En meg a ~/.bash_profile-t is atirom hogy ha bejelentkezik konzolon automatice inditsa az X-et.

Teljes kepernyo: gtk_window_fullscreen ();

Köszönöm szépena válaszokat!
Letöltöttem az ajálott programokat, de sajnos mindegyiknek van vlmilyen hasfájása...
Ubuntu Feisty 7.04-et használok.
A glade-t próbáltam telepíteni(bár a wxWidgets-nél is ez a baja), kicsomagoltam, beírtam, hogy:
$ sudo ./configure --prefix=/progs/[programnév]

erre:

checking build system type... i686-pc-linux-gnulibc1
checking host system type... i686-pc-linux-gnulibc1
checking target system type... i686-pc-linux-gnulibc1
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking for intltool >= 0.35.0... 0.35.0 found
checking for perl... /usr/bin/perl
checking for XML::Parser... ok
checking for iconv... /usr/bin/iconv
checking for msgfmt... msgfmt
checking for msgmerge... msgmerge
checking for xgettext... xgettext
checking for glib-genmarshal... no
checking for dlltool... no
checking for style of include used by make... GNU
checking for gcc... gcc
checking for C compiler default output file name... configure: error: C compiler cannot create executables
See `config.log' for more details.

...és a config.log file:

This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by glade3 configure 3.2.2, which was
generated by GNU Autoconf 2.60. Invocation command line was

$ ./configure --prefix=/progs/glade3-3.2.2

## --------- ##
## Platform. ##
## --------- ##

hostname = dani
uname -m = i686
uname -r = 2.6.20-15-generic
uname -s = Linux
uname -v = #2 SMP Sun Apr 15 07:36:31 UTC 2007

/usr/bin/uname -p = unknown
/bin/uname -X = unknown

/bin/arch = i686
/usr/bin/arch -k = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo = unknown
/bin/machine = unknown
/usr/bin/oslevel = unknown
/bin/universe = unknown

PATH: /usr/local/sbin
PATH: /usr/local/bin
PATH: /usr/sbin
PATH: /usr/bin
PATH: /sbin
PATH: /bin
PATH: /usr/games

## ----------- ##
## Core tests. ##
## ----------- ##

configure:2098: checking build system type
configure:2116: result: i686-pc-linux-gnulibc1
configure:2138: checking host system type
configure:2153: result: i686-pc-linux-gnulibc1
configure:2175: checking target system type
configure:2190: result: i686-pc-linux-gnulibc1
configure:2233: checking for a BSD-compatible install
configure:2289: result: /usr/bin/install -c
configure:2300: checking whether build environment is sane
configure:2343: result: yes
configure:2408: checking for gawk
configure:2438: result: no
configure:2408: checking for mawk
configure:2424: found /usr/bin/mawk
configure:2435: result: mawk
configure:2446: checking whether make sets $(MAKE)
configure:2467: result: yes
configure:2652: checking whether to enable maintainer-specific portions of Makefiles
configure:2661: result: no
configure:2689: checking for intltool >= 0.35.0
configure:2696: result: 0.35.0 found
configure:2752: checking for perl
configure:2770: found /usr/bin/perl
configure:2782: result: /usr/bin/perl
configure:2801: checking for XML::Parser
configure:2804: result: ok
configure:2815: checking for iconv
configure:2833: found /usr/bin/iconv
configure:2846: result: /usr/bin/iconv
configure:2856: checking for msgfmt
configure:2887: result: msgfmt
configure:2897: checking for msgmerge
configure:2928: result: msgmerge
configure:2938: checking for xgettext
configure:2969: result: xgettext
configure:2991: checking for glib-genmarshal
configure:3024: result: no
configure:3031: checking for dlltool
configure:3064: result: no
configure:3082: checking for style of include used by make
configure:3110: result: GNU
configure:3183: checking for gcc
configure:3199: found /usr/bin/gcc
configure:3210: result: gcc
configure:3448: checking for C compiler version
configure:3455: gcc --version >&5
gcc (GCC) 4.1.2 (Ubuntu 4.1.2-0ubuntu4)
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

configure:3458: $? = 0
configure:3465: gcc -v >&5
Using built-in specs.
Target: i486-linux-gnu
Configured with: ../src/configure -v --enable-languages=c,c++,fortran,objc,obj-c++,treelang --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --program-suffix=-4.1 --enable-__cxa_atexit --enable-clocale=gnu --enable-libstdcxx-debug --enable-mpfr --enable-checking=release i486-linux-gnu
Thread model: posix
gcc version 4.1.2 (Ubuntu 4.1.2-0ubuntu4)
configure:3468: $? = 0
configure:3475: gcc -V >&5
gcc: '-V' option must have argument
configure:3478: $? = 1
configure:3501: checking for C compiler default output file name
configure:3528: gcc conftest.c >&5
/usr/bin/ld: crt1.o: No such file: No such file or directory
collect2: ld returned 1 exit status
configure:3531: $? = 1
configure: failed program was:
| /* confdefs.h. */
| #define PACKAGE_NAME "glade3"
| #define PACKAGE_TARNAME "glade3"
| #define PACKAGE_VERSION "3.2.2"
| #define PACKAGE_STRING "glade3 3.2.2"
| #define PACKAGE_BUGREPORT "http://bugzilla.gnome.org/enter_bug.cgi?product=glade3"
| #define PACKAGE "glade3"
| #define VERSION "3.2.2"
| /* end confdefs.h. */
|
| int
| main ()
| {
|
| ;
| return 0;
| }
configure:3570: error: C compiler cannot create executables
See `config.log' for more details.

## ---------------- ##
## Cache variables. ##
## ---------------- ##

ac_cv_build=i686-pc-linux-gnulibc1
ac_cv_env_CCC_set=
ac_cv_env_CCC_value=
ac_cv_env_CC_set=
ac_cv_env_CC_value=
ac_cv_env_CFLAGS_set=
ac_cv_env_CFLAGS_value=
ac_cv_env_CPPFLAGS_set=
ac_cv_env_CPPFLAGS_value=
ac_cv_env_CPP_set=
ac_cv_env_CPP_value=
ac_cv_env_CXXCPP_set=
ac_cv_env_CXXCPP_value=
ac_cv_env_CXXFLAGS_set=
ac_cv_env_CXXFLAGS_value=
ac_cv_env_CXX_set=
ac_cv_env_CXX_value=
ac_cv_env_F77_set=
ac_cv_env_F77_value=
ac_cv_env_FFLAGS_set=
ac_cv_env_FFLAGS_value=
ac_cv_env_GNOME_CFLAGS_set=
ac_cv_env_GNOME_CFLAGS_value=
ac_cv_env_GNOME_LIBS_set=
ac_cv_env_GNOME_LIBS_value=
ac_cv_env_GTK_CFLAGS_set=
ac_cv_env_GTK_CFLAGS_value=
ac_cv_env_GTK_LIBS_set=
ac_cv_env_GTK_LIBS_value=
ac_cv_env_LDFLAGS_set=
ac_cv_env_LDFLAGS_value=
ac_cv_env_PKG_CONFIG_set=
ac_cv_env_PKG_CONFIG_value=
ac_cv_env_PYGTK_CFLAGS_set=
ac_cv_env_PYGTK_CFLAGS_value=
ac_cv_env_PYGTK_LIBS_set=
ac_cv_env_PYGTK_LIBS_value=
ac_cv_env_build_alias_set=
ac_cv_env_build_alias_value=
ac_cv_env_host_alias_set=
ac_cv_env_host_alias_value=
ac_cv_env_target_alias_set=
ac_cv_env_target_alias_value=
ac_cv_host=i686-pc-linux-gnulibc1
ac_cv_path_INTLTOOL_ICONV=/usr/bin/iconv
ac_cv_path_INTLTOOL_MSGFMT=msgfmt
ac_cv_path_INTLTOOL_MSGMERGE=msgmerge
ac_cv_path_INTLTOOL_PERL=/usr/bin/perl
ac_cv_path_INTLTOOL_XGETTEXT=xgettext
ac_cv_path_install='/usr/bin/install -c'
ac_cv_prog_AWK=mawk
ac_cv_prog_ac_ct_CC=gcc
ac_cv_prog_make_make_set=yes
ac_cv_target=i686-pc-linux-gnulibc1

## ----------------- ##
## Output variables. ##
## ----------------- ##

ACLOCAL='${SHELL} /home/kozmad/Desktop/linux/glade3-3.2.2/missing --run aclocal-1.9'
ALL_LINGUAS=''
AMDEPBACKSLASH='\'
AMDEP_FALSE='#'
AMDEP_TRUE=''
AMTAR='${SHELL} /home/kozmad/Desktop/linux/glade3-3.2.2/missing --run tar'
AM_CFLAGS=''
AM_CPPFLAGS=''
AM_CXXFLAGS=''
AM_LDFLAGS=''
AR=''
AS=''
AUTOCONF='${SHELL} /home/kozmad/Desktop/linux/glade3-3.2.2/missing --run autoconf'
AUTOHEADER='${SHELL} /home/kozmad/Desktop/linux/glade3-3.2.2/missing --run autoheader'
AUTOMAKE='${SHELL} /home/kozmad/Desktop/linux/glade3-3.2.2/missing --run automake-1.9'
AWK='mawk'
BUILD_GNOME_FALSE=''
BUILD_GNOME_TRUE=''
CATALOGS=''
CATOBJEXT=''
CC='gcc'
CCDEPMODE=''
CFLAGS=''
CPP=''
CPPFLAGS=''
CXX=''
CXXCPP=''
CXXDEPMODE=''
CXXFLAGS=''
CYGPATH_W='echo'
DATADIRNAME=''
DEFS=''
DEPDIR='.deps'
DLLTOOL=''
DOC_USER_FORMATS=''
ECHO='echo'
ECHO_C=''
ECHO_N='-n'
ECHO_T=''
EGREP=''
ENABLE_GTK_DOC_FALSE=''
ENABLE_GTK_DOC_TRUE=''
ENABLE_PYTHON_FALSE=''
ENABLE_PYTHON_TRUE=''
ENABLE_SK_FALSE=''
ENABLE_SK_TRUE=''
EXEEXT=''
F77=''
FFLAGS=''
GCC_WARN_FLAGS=''
GETTEXT_PACKAGE=''
GLADE_AGE=''
GLADE_CURRENT=''
GLADE_REVISION=''
GLIB_GENMARSHAL=''
GMOFILES=''
GMSGFMT=''
GNOME_CFLAGS=''
GNOME_LIBS=''
GREP=''
GTK_CFLAGS=''
GTK_DOC_USE_LIBTOOL_FALSE=''
GTK_DOC_USE_LIBTOOL_TRUE=''
GTK_LIBS=''
HAVE_GNOME_DOC_UTILS_FALSE=''
HAVE_GNOME_DOC_UTILS_TRUE=''
HELP_DIR=''
HTML_DIR=''
INSTALL_DATA='${INSTALL} -m 644'
INSTALL_PROGRAM='${INSTALL}'
INSTALL_SCRIPT='${INSTALL}'
INSTALL_STRIP_PROGRAM='${SHELL} $(install_sh) -c -s'
INSTOBJEXT=''
INTLLIBS=''
INTLTOOL_CAVES_RULE='%.caves: %.caves.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
INTLTOOL_DESKTOP_RULE='%.desktop: %.desktop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
INTLTOOL_DIRECTORY_RULE='%.directory: %.directory.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
INTLTOOL_EXTRACT='$(top_builddir)/intltool-extract'
INTLTOOL_ICONV='/usr/bin/iconv'
INTLTOOL_KBD_RULE='%.kbd: %.kbd.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
INTLTOOL_KEYS_RULE='%.keys: %.keys.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -k -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
INTLTOOL_MERGE='$(top_builddir)/intltool-merge'
INTLTOOL_MSGFMT='msgfmt'
INTLTOOL_MSGMERGE='msgmerge'
INTLTOOL_OAF_RULE='%.oaf: %.oaf.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -p $(top_srcdir)/po $< $@'
INTLTOOL_PERL='/usr/bin/perl'
INTLTOOL_PONG_RULE='%.pong: %.pong.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
INTLTOOL_PROP_RULE='%.prop: %.prop.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
INTLTOOL_SCHEMAS_RULE='%.schemas: %.schemas.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -s -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
INTLTOOL_SERVER_RULE='%.server: %.server.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -o -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
INTLTOOL_SERVICE_RULE='%.service: %.service.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
INTLTOOL_SHEET_RULE='%.sheet: %.sheet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.soundlist.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
INTLTOOL_THEME_RULE='%.theme: %.theme.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -d -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
INTLTOOL_UI_RULE='%.ui: %.ui.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
INTLTOOL_UPDATE='$(top_builddir)/intltool-update'
INTLTOOL_XAM_RULE='%.xam: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
INTLTOOL_XGETTEXT='xgettext'
INTLTOOL_XML_NOMERGE_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u /tmp $< $@'
INTLTOOL_XML_RULE='%.xml: %.xml.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
LDFLAGS=''
LIBOBJS=''
LIBS=''
LIBTOOL=''
LN_S=''
LTLIBOBJS=''
MAINT='#'
MAINTAINER_MODE_FALSE=''
MAINTAINER_MODE_TRUE='#'
MAKEINFO='${SHELL} /home/kozmad/Desktop/linux/glade3-3.2.2/missing --run makeinfo'
MKINSTALLDIRS=''
MSGFMT=''
NO_STRICT_ALIASING_CFLAGS=''
OBJDUMP=''
OBJEXT=''
OMF_DIR=''
PACKAGE='glade3'
PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=glade3'
PACKAGE_NAME='glade3'
PACKAGE_STRING='glade3 3.2.2'
PACKAGE_TARNAME='glade3'
PACKAGE_VERSION='3.2.2'
PATH_SEPARATOR=':'
PKG_CONFIG=''
POFILES=''
POSUB=''
PO_IN_DATADIR_FALSE=''
PO_IN_DATADIR_TRUE=''
PYGTK_CFLAGS=''
PYGTK_CODEGEN=''
PYGTK_DEFSDIR=''
PYGTK_H2DEF=''
PYGTK_LIBS=''
PYTHON=''
PYTHON_CFLAGS=''
PYTHON_EXEC_PREFIX=''
PYTHON_EXTRA_LIBS=''
PYTHON_INCLUDES=''
PYTHON_LIBS=''
PYTHON_LIB_LOC=''
PYTHON_PLATFORM=''
PYTHON_PREFIX=''
PYTHON_VERSION=''
RANLIB=''
SET_MAKE=''
SHELL='/bin/bash'
STRIP=''
USE_NLS=''
VERSION='3.2.2'
WITH_WIN32_FALSE=''
WITH_WIN32_TRUE=''
XGETTEXT=''
ac_ct_CC='gcc'
ac_ct_CXX=''
ac_ct_F77=''
am__fastdepCC_FALSE=''
am__fastdepCC_TRUE=''
am__fastdepCXX_FALSE=''
am__fastdepCXX_TRUE=''
am__include='include'
am__leading_dot='.'
am__quote=''
am__tar='${AMTAR} chof - "$$tardir"'
am__untar='${AMTAR} xf -'
bindir='${exec_prefix}/bin'
build='i686-pc-linux-gnulibc1'
build_alias=''
build_cpu='i686'
build_os='linux-gnulibc1'
build_vendor='pc'
datadir='${datarootdir}'
datarootdir='${prefix}/share'
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
dvidir='${docdir}'
exec_prefix='NONE'
host='i686-pc-linux-gnulibc1'
host_alias=''
host_cpu='i686'
host_os='linux-gnulibc1'
host_vendor='pc'
htmldir='${docdir}'
includedir='${prefix}/include'
infodir='${datarootdir}/info'
install_sh='/home/kozmad/Desktop/linux/glade3-3.2.2/install-sh'
libdir='${exec_prefix}/lib'
libexecdir='${exec_prefix}/libexec'
localedir='${datarootdir}/locale'
localstatedir='${prefix}/var'
mandir='${datarootdir}/man'
mkdir_p='mkdir -p --'
oldincludedir='/usr/include'
pdfdir='${docdir}'
pkgpyexecdir=''
pkgpythondir=''
prefix='/progs/glade3-3.2.2'
program_transform_name='s,x,x,'
psdir='${docdir}'
pyexecdir=''
pythondir=''
sbindir='${exec_prefix}/sbin'
sharedstatedir='${prefix}/com'
sysconfdir='${prefix}/etc'
target='i686-pc-linux-gnulibc1'
target_alias=''
target_cpu='i686'
target_os='linux-gnulibc1'
target_vendor='pc'

## ----------- ##
## confdefs.h. ##
## ----------- ##

#define PACKAGE_NAME "glade3"
#define PACKAGE_TARNAME "glade3"
#define PACKAGE_VERSION "3.2.2"
#define PACKAGE_STRING "glade3 3.2.2"
#define PACKAGE_BUGREPORT "http://bugzilla.gnome.org/enter_bug.cgi?product=glade3"
#define PACKAGE "glade3"
#define VERSION "3.2.2"

configure: exit 77

(bocsánat ezért a hosszú hozzászólásért , de sajnos nem tudom mi ebben a fontos)
Szerintetek mi lehet a baja?
Köszönöm!
tOkEN

Át kell nézni figyelmesen az a logot... :]

/usr/bin/ld: crt1.o: No such file: No such file or directory

Itt valszeg a glibc-devel vagy hasonló nevü csomagod hiányzik. Ha c++-os dolgokat is szeretnél, akkor a libstdc++-nak is fent kellene lennie.

Próbálj meg odáig eljutni, hogy egy nagyon egyszerű forrást le bírj fordítani futtatható állománnyá.
pl.
int main ()
{
;
return 0;
}

Utána lehet nagyon sokat olvasni, tanulni és komolyabb vizekre evezni.

itt a huppon volt róla szó, hogy valaki elkezdett írni egy "hogyan programozzunk gtk+ környezetben" írást, szerintem keress rá (én lusta vok)

Letöltöttem ezeket függvénytárakat, meg gtk-s cuccokat,elvileg most a szükséges dolgok szépen feltelepültek, de ismét elakdatam sajnos...
nem értem, hogyan kell lefordítani a kódot...
http://library.gnome.org/devel/gtk/unstable/gtk-building.html ezen az oldalon írja, h hogyan kell telepíteni, de nem értem hogy a CPPFLAGS=... kezdetű részt hova, hol kell átírni.

Köszönöm
tOkEN

Kezdjük az elején. Alapvetően kétféleképp tudsz egy C/C++ programot fordulásra bírni, ha te írod. A könnyebbik vége az, ha csak egy Makefile-t gyártasz rá, ami valahogy így néz ki:


CC = gcc
CXX = g++
CXXFLAGS = -O2 -g `gtk-config --cflags`
LDFLAGS = `gtk-config --libs`
OBJS = main.o window.o mittudomen.o

all: kicsiprogram

kicsiprogram: $(OBJS)
      $(CXX) $(LDFLAGS) -o $@ $(OBJS)

%.o: %.c
      $(CC) $(CXXFLAGS) -o $@ -c $<

%.o: %.cpp
      $(CXX) $(CXXFLAGS) -o $@ -c $<

Ennél egy fokkal bonyolultabb, ha rendes installert is szeretnél, erre az autoconf rendszer való.
Sajnos arra pont Gtk-s példát nem tudok mondani, de keresgélj a LinuxVilág archívumában, ők pont ilyen megoldást veséztek ki.