LINUX.ORG.RU

Automake


0

0

Вообщем есть следующая проблема - есть у меня проектик в нем есть каталоги - /po /pixmaps /src /src/gui /src/engine - вроде бы прочитав документацию никаких проблем пишем следующее

AC_INIT(configure.in) AM_INIT_AUTOMAKE(oap-unstable, 0.1) AM_CONFIG_HEADER(config.h) AM_MAINTAINER_MODE

AC_ISC_POSIX AC_PROG_CC AM_PROG_CC_STDC AC_HEADER_STDC

# всякие либы и инклюды тут поскипал

AC_OUTPUT(Makefile src/engine/Makefile src/gui/Makefile \ src/Makefile po/Makefile.in)

это есстесвенно configure.in

Далее пишем просто и банально в /Makefile.am такую строчку помимо всяких указаний ему что переписать при цели install - собственно пишем следующую строку -

SUBDIRS = src po

Далее естественно привожу содержание src/Makefile.am -

SUBDIRS= engine gui

INCLUDES = \ -DPACKAGE_DATA_DIR=\""$(datadir)"\" \ -DPACKAGE_LOCALE_DIR=\""$(prefix)/$(DATADIRNAME)/locale"\" \ @PACKAGE_CFLAGS@

bin_PROGRAMS = oap-unstable

oap_unstable_SOURCES = \ main.c \ support.c support.h

oap_unstable_LDADD = @PACKAGE_LIBS@ $(INTLLIBS)

ну и далее привожу как пример содержание src/gui/Makefile.am

INCLUDES = \ -DPACKAGE_DATA_DIR=\""$(datadir)"\" \ -DPACKAGE_LOCALE_DIR=\""$(prefix)/$(DATADIRNAME)/locale"\" \ @PACKAGE_CFLAGS@

oap_unstable_SOURCES = \ mainwin.c mainwin.h \ menus.c menus.h \ wizardswin.c wizardswin.h \ trees.c trees.h \ callbacks.c callbacks.h

oap_unstable_LDADD = @PACKAGE_LIBS@ $(INTLLIBS)

понятно что чего то не хватает - только вот чего забыл - то есть мы видим есстественно сообщение когда делаем make

$ make make all-recursive make[1]: Entering directory `/home/kaanoken/Devel/OAP-unstable-CVS' Making all in src make[2]: Entering directory `/home/kaanoken/Devel/OAP-unstable-CVS/src' cd .. && automake-1.4 --gnu src/Makefile cd .. \ && CONFIG_FILES=src/Makefile CONFIG_HEADERS= /bin/sh ./config.status config.status: creating src/Makefile config.status: executing default-1 commands config.status: executing default-2 commands make[2]: Leaving directory `/home/kaanoken/Devel/OAP-unstable-CVS/src' make[2]: Entering directory `/home/kaanoken/Devel/OAP-unstable-CVS/src' Making all in engine make[3]: Entering directory `/home/kaanoken/Devel/OAP-unstable-CVS/src/engine' make[3]: Цель `all' не требует выполнения команд. make[3]: Leaving directory `/home/kaanoken/Devel/OAP-unstable-CVS/src/engine' Making all in gui make[3]: Entering directory `/home/kaanoken/Devel/OAP-unstable-CVS/src/gui' make[3]: Цель `all' не требует выполнения команд. make[3]: Leaving directory `/home/kaanoken/Devel/OAP-unstable-CVS/src/gui' make[3]: Entering directory `/home/kaanoken/Devel/OAP-unstable-CVS/src' gcc -g -O2 -o oap-unstable main.o support.o -Wl,--export-dynamic -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangoxft-1.0 -lpangox-1.0 -lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 main.o(.text+0x61): In function `main': /home/kaanoken/Devel/OAP-unstable-CVS/src/main.c:36: undefined reference to `oapmain_new' collect2: ld returned 1 exit status make[3]: *** [oap-unstable] Ошибка 1 make[3]: Leaving directory `/home/kaanoken/Devel/OAP-unstable-CVS/src' make[2]: *** [all-recursive] Ошибка 1 make[2]: Leaving directory `/home/kaanoken/Devel/OAP-unstable-CVS/src' make[1]: *** [all-recursive] Ошибка 1 make[1]: Leaving directory `/home/kaanoken/Devel/OAP-unstable-CVS' make: *** [all-recursive-am] Ошибка 2

так вот чего Я забыл - вот в чем вопрос - что забыл где прописать?

Re: Automake

вообщем все разобрался =)) сделал все через noinst_LIBRARIES - работает на ура - а также еще добавил в configure.in AC_PROG_RANLIB

alphex_kaanoken ★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.