Newsgroup: it.comp.os.linux.iniziare
Titolo: kdevelop e autoconf

Salve.
Se faccio nuovo progetto C con kdevelop, viene creata una alberatura
standard per un pacchetto standard:
AUTHORS
COPYING
ChangeLog
Doxyfile
INSTALL
Makefile.am
Makefile.cvs
NEWS
README
TODO
config.guess*
config.sub*
configure.in
depcomp*
install-sh*
ltmain.sh
missing*
mkinstalldirs*
src/
che manca del 'configure' il quale va solitamente creato tramite
autoconf dal 
configure.in
ho provato quindi a lanciare "autoconf", ma mi da questo errore:
configure.in:3
: error: possibly undefined macro: AM_CONFIG_HEADER
      If this token and others are legitimate, please use
m4_pattern_allow.
      See the Autoconf documentation.
configure.in:4
: error: possibly undefined macro: AM_INIT_AUTOMAKE
configure.in:8
: error: possibly undefined macro: AM_PROG_LIBTOOL
il 
configure.in
 è:
AC_INIT(
configure.in
)
AM_CONFIG_HEADER(config.h)
AM_INIT_AUTOMAKE(test, 0.1)
AC_LANG_C
AC_PROG_CC
AM_PROG_LIBTOOL
AC_OUTPUT(Makefile src/Makefile)
cioè non funzionano le 3 righe AM_*, come se non trovasse automake,
che però è installato
$ autoconf --version
autoconf (GNU Autoconf) 2.61
$ automake --version
automake (GNU automake) 1.9.6
$ kdevelop --version
Qt: 3.3.8b
KDE: 3.5.9
KDevelop: 3.5.1
Distro: slackware-current
cosa mi manca?

 standard per un pacchetto standard:
]zac[
Mancano di impostare alcune macro fondamenentali, ti conviene prendere come
esempio dei piccoli progetti già fatti.
Per esempio:
configure.ac
# Process this file with autoconf to produce a configure script.
AC_INIT(gesconf, 0.4.0, 
be...@adria.it
 
be...@libero.it
)
AC_CONFIG_SRCDIR([src/GesConf.h])
#AC_CONFIG_HEADER([config.h])
#AM_CONFIG_HEADER([config.h])
AM_INIT_AUTOMAKE(gesconf, 0.4.0)
# Checks for programs.
AC_PROG_CXX
AC_PROG_AWK
AC_PROG_CC
AC_PROG_CPP
AC_PROG_INSTALL
AC_PROG_LN_S
AC_PROG_MAKE_SET
AC_PROG_RANLIB
# Checks for libraries.
# Checks for header files.
AC_HEADER_STDC
AC_CHECK_HEADERS([fcntl.h libintl.h limits.h malloc.h string.h unistd.h])
# Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
# Checks for library functions.
AC_FUNC_MALLOC
AC_CHECK_FUNCS([strcspn strstr])
AM_GNU_GETTEXT
AC_CONFIG_FILES([Makefile m4/Makefile po/Makefile.in
                src/Makefile
                anlibrary/Makefile])
AC_OUTPUT 
Makefile.am
## Process this file with automake to produce Makefile.in
# General automake options.
AUTOMAKE_OPTIONS = foreign
ACLOCAL_AMFLAGS = -I m4
SUBDIRS = m4 anlibrary src po
# documentation to install
EXTRA_DIST = config.rpath
Per creare da zero i vari file di configurazione uso questo script, è anche
utile per capire i vari passaggi e opzioni di uso dei tools.
autogen.sh
#! /bin/sh
# 1ab) Create a m4 directory
# mkdir m4
# 2ab) Create a basic 
configure.ac
# autoscan
# 3ab) Update a 
configure.ac
 to a newer Autoconf
# autoupdate -f
# 4ab) Update the structure for a new gettext
# gettextize -f -c
# 5a)  Update all generated configuration files (run autoconf, autoheader,
aclocal, automake, 
#      autopoint (formerly gettextize), and libtoolize where appropriate).
#      The gesconf package don't use the intl directory.
# autoreconf -f or  autoreconf -f -i
# 5b)  Update configuration files a new system:
aclocal -I m4
autoheader
#automake -a
automake
autoconf
# 6b) Update standard gettext infrastructure
# autopoint -f

La cosa era più semplice del previsto:
# make -f Makefile.cvs
e fa tutto lui.
anzi, ancora più semplice... lo lancio da kdevelop (c'è il menù
apposta)
Ciao,
Matteo