PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : parameterübergabe von configure an Makefile



ProfBunny
21-08-2008, 19:50
hi

das ist meine erste berührung mit diesen sachen.
ich habe das configure script so angepasst, das es diese sachen ausließt:


hecking DBUS_LIBS... -ldbus-glib-1 -ldbus-1 -lgobject-2.0 -lglib-2.0
checking for glib-2.0 >= 2.0.0... 2.16.5
checking GLIB_CFLAGS... -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
checking GLIB_LIBS... -lglib-2.0
checking for gobject-2.0 >= 2.0.0... 2.16.5
checking GOBJEKT_CFLAGS... -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include
checking GOBJEKT_LIBS... -lgobject-2.0 -lglib-2.0
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating po/Makefile.in
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing po/stamp-it commands



soweit so gut, jetzt das aber:


profbunny@sysiphus:~/source/workspace/xfce4-audacious-plugin$ make
make all-recursive
make[1]: Entering directory `/home/profbunny/source/workspace/xfce4-audacious-plugin'
Making all in src
make[2]: Entering directory `/home/profbunny/source/workspace/xfce4-audacious-plugin/src'
gcc -DHAVE_CONFIG_H -I. -I.. -DPACKAGE_LOCALE_DIR=\""/usr/share/locale"\" -DPACKAGE_SRC_DIR=\""."\" -DPACKAGE_DATA_DIR=\""/usr/share"\" -Wall -g -g -O2 -MT audacious.o -MD -MP -MF .deps/audacious.Tpo -c -o audacious.o audacious.c
audacious.c:19:17: error: gtk.h: Datei oder Verzeichnis nicht gefunden
audacious.c:25:18: error: dbus.h: Datei oder Verzeichnis nicht gefunden
audacious.c:26:21: error: audctrl.h: Datei oder Verzeichnis nicht gefunden



irgendwie werden meine gesuchten include pfade nicht genutzt. weiß jemand wo ich drehen muss?

thx


das MAKEFILE. am aus dem src dir


## Process this file with automake to produce Makefile.in

## Created by Anjuta

AM_CPPFLAGS = \
-DPACKAGE_LOCALE_DIR=\""$(prefix)/$(DATADIRNAME)/locale"\" \
-DPACKAGE_SRC_DIR=\""$(srcdir)"\" \
-DPACKAGE_DATA_DIR=\""$(datadir)"\" $(XFCE4_AUDACIOUS_PLUGIN_CFLAGS)

AM_CFLAGS =\
-Wall\
-g

bin_PROGRAMS = xfce4_audacious_plugin

xfce4_audacious_plugin_SOURCES = \
audacious.c

xfce4_audacious_plugin_LDFLAGS =

xfce4_audacious_plugin_LDADD = $(XFCE4_AUDACIOUS_PLUGIN_LIBS)

undefined
21-08-2008, 22:01
Oh je, du schreibst doppelt gemoppelt. :D
Wenn du eine config.h verwendest brauchst du keine extra Macro Flags zu setzen. Sie AC_DEFINE_UNQUOTED und achte darauf das AM_INIT_AUTOMAKE gesetzt ist.

dnl configure.ac
AM_INIT_AUTOMAKE([foreign -Wall])
...
AC_DEFINE_UNQUOTED([PACKAGE_DATA_DIR], ["$datadir"], [datadir directory])
....
dnl generiert im Makefile die Variable GTK2_CFLAGS und GTK2_LIBS
PKG_CHECK_MODULES(GTK2, gtk+-2.0 >= 2.13.3,
AC_DEFINE([HAVE_GTK2], 1,[USING gtk2 BLA BLA])
,AC_MSG_ERROR([gtk2 BLA BLA installed?])
)


Zum Thema Include das ist bei GTK etwas anders.
Du musst meistens immer noch ein Verzeichnis im #include ... mit angeben.
Im Makefile der definierten Quelldateien

## Makefile.am
AM_CFLAGS = $(GTK2_CFLAGS)
AM_LDFLAGS = $(GTK2_LIBS)

Den Rest machen libtool, autoconf und automake

ProfBunny
22-08-2008, 09:07
hi,

wieso schreibe ich doppelt?

ich habe die beiden optionen im configure.ac gesetzt. allerdings bleibt der fehler
gleich:(

danke