Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3134 connectés 

 


Dernière réponse
Sujet : [Résolu][AUTOTOOLS]J'ai du mal...
Kristoph Il y a scons, scons + bksys ou alors utiliser des outils qui masquent en partie la chaine autotools comme le gestionnaire de projet de kdevelop.
 
Il y a aussi bjam je crois, le gestionnaire de projets de boost.org et qmake est parait-il pas mal en soit.

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
Kristoph Il y a scons, scons + bksys ou alors utiliser des outils qui masquent en partie la chaine autotools comme le gestionnaire de projet de kdevelop.
 
Il y a aussi bjam je crois, le gestionnaire de projets de boost.org et qmake est parait-il pas mal en soit.
Emmanuel Delahaye

black_lord a écrit :

je sais pas [:spamafote] surement oui :)


En fait non.
 
Il faut  
SUBDIRS = ...
 
tant qu'on a que des répertoires 'en-dessous'
 
et les commandes de cibles (bin_PROGRAMS=... etc.) tant qu'il y a des sources à compiler... (en gros)

Mjules

l0ky a écrit :

Propose [::spamafote]


j'ai ouï dire que cons (perl) et scons (python) étaient pas mal ; j'ai aussi entendu parler de unsermake.
 
http://www.dsmit.com/cons/
http://www.scons.org
http://wiki.kde.org/tiki-index.php?page=unsermake

l0ky Je vote pour moi [:dawa]
black_lord je dis peut être une bêtise mais je pense que oui (il y en a un de nous qui dit une bêtise [:god])
l0ky Je sens que je vais dire une grosse bétise, ca gère autre chose que java [:opus dei]
black_lord ant ?
l0ky

Kristoph a écrit :

Je sais que ça fait troll mais faudrait penser à abandonner le dinausore incompréhensible que sont les autotools pour passer à autre chose :whistle:


 
Propose [::spamafote]

Kristoph Je sais que ça fait troll mais faudrait penser à abandonner le dinausore incompréhensible que sont les autotools pour passer à autre chose :whistle:
l0ky wget [:spamafote][:rougit]
black_lord bookmarked
l0ky Tout sur les autotools, tuto inclus :)
http://sources.redhat.com/autobook [...] C_Contents
black_lord je sais pas [:spamafote] surement oui :)
Emmanuel Delahaye

black_lord a écrit :

chaque dossier de SUBDIR doit avoir son propre Makefile.am :)


Avec quoi dedans ? La même chose que dans le repertoire d'origine ?
 

black_lord ma petite référence : http://seul.org/docs/autotut/
black_lord chaque dossier de SUBDIR doit avoir son propre Makefile.am :)
Emmanuel Delahaye

black_lord a écrit :

tu écris le makefile.am, c'est là dedans qu'il faut voir il me semble :)
 
(j'ai jamais pratiqué autotools, j'avais juste commencé à lire la doc)


Je l'ai publié dans mon premier post. Qu'est-ce qui manque ?

black_lord tu écris le makefile.am, c'est là dedans qu'il faut voir il me semble :)
 
(j'ai jamais pratiqué autotools, j'avais juste commencé à lire la doc)
Emmanuel Delahaye

black_lord a écrit :

il te faut une règle 'all' pour chacun de tes Makefile il me semble :)


C'est pas moi qui écrit le Makefile, c'est automake...
 
C'est précisément le but de l'opération!
 
Ma question est "qu'est-ce que j'ai oublié dans Makefile.am et configure.in qui fait que le Makefile de a06/src n'est pas produit alors que celui de a06 est produit.

black_lord il te faut une règle 'all' pour chacun de tes Makefile il me semble :)
Emmanuel Delahaye Mandrake 10.1
Linux kernel 2.6
 
Bonjour.
 
J'ai un mini projet de test dans un répertoire .../a06


[edelahaye@edtux a06]$ ls
configure.in  do.sh*  Makefile.am  src/
[edelahaye@edtux a06]$ ls src
fun.c  fun.h  main.c


avec Makefile.am :


## Makefile.am
## user file for automake
SUBDIRS = src
bin_PROGRAMS = hello
hello_SOURCES =  main.c fun.c fun.h


et configure.in :


                                               -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.
 
AC_INIT(src/main.c)
AM_INIT_AUTOMAKE(hello, 0.1)
AC_PREREQ(2.59)
AM_CONFIG_HEADER(config.h)
 
# Checks for programs.
AC_PROG_CC
 
# Checks for libraries.
 
# Checks for header files.
 
# Checks for typedefs, structures, and compiler characteristics.
 
# Checks for library functions.
 
AC_OUTPUT(Makefile)


Quand le lance ./do.sh :


# do.sh
aclocal
autoheader
autoconf
touch AUTHORS ChangeLog NEWS README
automake --add-missing
./configure


j'obtiens


automake: configure.in: installing `./install-sh'
automake: configure.in: installing `./mkinstalldirs'
automake: configure.in: installing `./missing'
automake: configure.in: installing `./config.guess'
automake: configure.in: installing `./config.sub'
automake: Makefile.am: installing `./INSTALL'
automake: Makefile.am: installing `./COPYING'
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking whether make sets $(MAKE)... yes
checking for working aclocal-1.4... found
checking for working autoconf... found
checking for working automake-1.4... found
checking for working autoheader... found
checking for working makeinfo... found
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
configure: creating ./config.status
config.status: creating Makefile
config.status: creating config.h
config.status: executing default-1 commands


ce qui me parait être correct. A ce moment là, le répertoire est le suivant :


[edelahaye@edtux a06]$ ls
aclocal.m4       config.h        configure*    install-sh@  mkinstalldirs@  stamp-h.in
AUTHORS          config.h.in     configure.in  Makefile     NEWS
autom4te.cache/  config.log      COPYING@      Makefile.am  README
ChangeLog        config.status*  do.sh*        Makefile.in  src/
config.guess@    config.sub@     INSTALL@      missing@     stamp-h


Je lance alors make, et j'obtiens ceci :


[edelahaye@edtux a06]$ make
make  all-recursive
make[1]: Entering directory `/home/edelahaye/c-dev/a06'
Making all in src
make[2]: Entering directory `/home/edelahaye/c-dev/a06/src'
make[2]: *** Pas de règle pour fabriquer la cible « all ». Arrêt.
make[2]: Leaving directory `/home/edelahaye/c-dev/a06/src'
make[1]: *** [all-recursive] Erreur 1
make[1]: Leaving directory `/home/edelahaye/c-dev/a06'
make: *** [all-recursive-am] Erreur 2


ce qui a le don de m'agacer, car je ne sais plus quoi faire...
 
J'ai l'impression qu'il manque quelque chose dans src/, mais quoi ?
 
Merci d'essayer de m'aider
 
Emmanuel


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)