Re: [Tech] Makefile

2010-09-08 Par sujet Denis Arnaud
Le 7 septembre 2010 12:21, Vincent BRACH v.br...@smie.com a écrit :

 Après pour un petit projet ou un programme de test (quelques modules
 sources) ça commence à faire un peu usine à gaz et un Makefile suffit
 souvent amplement (mais c'est sur que c'est plus générique).


CMake est ton ami pour ce genre de petits projets. C'est très rapide, et n'a
pas le côté usine à gaz des Autotools.

Denis

 Diffusez cette liste aupres de vos relations :-)
Linux Azur : http://www.linux-azur.org
Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***





Re: [Tech] Makefile

2010-09-08 Par sujet Michael Opdenacker
On 09/08/2010 10:07 AM, Denis Arnaud wrote:
 Le 7 septembre 2010 12:21, Vincent BRACH v.br...@smie.com
 mailto:v.br...@smie.com a écrit :

 Après pour un petit projet ou un programme de test (quelques
 modules sources) ça commence à faire un peu usine à gaz et un
 Makefile suffit souvent amplement (mais c'est sur que c'est plus
 générique).


 CMake est ton ami pour ce genre de petits projets. C'est très rapide,
 et n'a pas le côté usine à gaz des Autotools.

 Denis

Tout à fait d'accord. J'ai d'ailleurs écrit un petit article sur le
sujet hier:
http://omappedia.org/wiki/Building_Software_With_CMake

:-)

Michael.

-- 
Michael Opdenacker, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com
+ 33 621 604 642


 Diffusez cette liste aupres de vos relations :-)
Linux Azur : http://www.linux-azur.org
Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***





RE: [Tech] Makefile

2010-09-07 Par sujet Bélénos Le Gaulois

 Date: Mon, 6 Sep 2010 23:54:35 +0200
 From: vincent.ste...@laposte.net
 To: linux06@linuxfr.org
 Subject: Re: [Tech] Makefile
 
 Bélénos Le Gaulois wrote:
 (..)
  Quel est l'intérêt d'utiliser des variables ou plutôt des constantes
  dans ce cas précis) quand leur frappe est plus longue
  que la saisie de la commande elle même?
  
  $(AS) $(ASFLAGS) pour nasm -f bin
 
  C'est utile pour la surcharge depuis l'extérieur. Par exemple, depuis
 la ligne de commande :
 
 $ make ASFLAGS=xxx
 
 -- 
 Vincent Stehlé
 
Ok, ben j'ai vraiment des choses à apprendre... :-D

Sylvio(06700)
06 68 85 44 03
  
 Diffusez cette liste aupres de vos relations :-)
Linux Azur : http://www.linux-azur.org
Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***





Re: [Tech] Makefile

2010-09-07 Par sujet Vincent BRACH
Salut Vincent et la liste,

  Il est recommandé de seulement fournir des valeurs par défaut à ces
 variables, pour permettre la surcharge depuis la ligne de commande. Si
 tu as des paramètres essentiels à conserver, tu peux utiliser une
 variable supplémentaire du genre EXTRA_CFLAGS. Par exemple :

[.../...]

Oui tout à fait, c'était un exemple simple et pour ne pas trop
embrouiller les esprits :)

 (c.f. http://sourceware.org/automake/automake.html#User-Variables)


J'étais en effet tombé sur ce site concernant les autotools qui est bien
fait. C'est en effet le niveau du dessus par rapport à make.

Ma vision est qu'en effet pour des projets qui commencent à être
conséquents mais surtout dans un but de livraison/portabilité à un
tiers ces outils sont vraiment très pratique (la preuve la plupart les
utilisent ;)). Après pour un petit projet ou un programme de
test (quelques modules sources) ça commence à faire un peu usine à gaz
et un Makefile suffit souvent amplement (mais c'est sur que c'est plus
générique).

@+
Vincent




 Diffusez cette liste aupres de vos relations :-)
Linux Azur : http://www.linux-azur.org
Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***





Re: [Tech] Makefile

2010-09-06 Par sujet Vincent
Vincent BRACH wrote:
 Tu peux très bien écrire un Makefile du style :
 CC=gcc
 CFLAGS= tes flags spécifiques pour la compilation du C
 CPPFLAGS = tes flags spécifiques pour la compilation du C++

 Il est recommandé de seulement fournir des valeurs par défaut à ces
variables, pour permettre la surcharge depuis la ligne de commande. Si
tu as des paramètres essentiels à conserver, tu peux utiliser une
variable supplémentaire du genre EXTRA_CFLAGS. Par exemple :

# Flags par défaut, au cas où.
CFLAGS := -g -O2

# Includes essentiels à garder dans tous les cas.
EXTRA_CFLAGS := -Ixxx -Iyyy

%.o: %.c
$(CC) $(CFLAGS) $(EXTRA_CFLAGS) -c $ -o $@

(c.f. http://sourceware.org/automake/automake.html#User-Variables)

-- 
Vincent Stehlé

 Diffusez cette liste aupres de vos relations :-)
Linux Azur : http://www.linux-azur.org
Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***





Re: [Tech] Makefile

2010-09-06 Par sujet Vincent
Bélénos Le Gaulois wrote:
(..)
 Quel est l'intérêt d'utiliser des variables ou plutôt des constantes
 dans ce cas précis) quand leur frappe est plus longue
 que la saisie de la commande elle même?
 
 $(AS) $(ASFLAGS) pour nasm -f bin

 C'est utile pour la surcharge depuis l'extérieur. Par exemple, depuis
la ligne de commande :

$ make ASFLAGS=xxx

-- 
Vincent Stehlé

 Diffusez cette liste aupres de vos relations :-)
Linux Azur : http://www.linux-azur.org
Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***





Re: [Tech] Makefile

2010-09-03 Par sujet Vincent BRACH

Salut Léo et bonjour à tous,
justement je me demandais si Make accordait une réelle importance à 
l'indentation. J'ai configuré mon Vim pour insérer 4 espaces au lieu 
d'une tab (plus standard), mais peut être que j'ai mal fait... si 
quelqu'un a plus de précisions sur le sujet :)
Tout à fait : l'outil make accorde la plus grande importance à 
l'écriture du Makefile au niveau de ce que tu appelles l'indentation : 
je dirais plus au niveau rubrique.
- Si une ligne ne commence pas par une tabulation il s'agit de 
déclaration de variables (ou constantes) et/ou d'une cible dans le Makefile.
- Si une ligne commence par une tabulation (attention j'ai bien dit une 
tabulation et pas plusieurs espaces) il s'agit d'une ligne d'exécution 
d'une commande (en générale dans une cible).


Petit test entre geek :) :
gvim (trés bon éditeur, n'en déplaise a certains puristes) sait 
d'ailleurs très bien faire la différence : faites le test : écrire un 
Makefile dans gvim avec une cible (.o:.c par exemple) et à la ligne 
suivante écrivez votre ligne de commande (par exemple un @cat 
/etc/issue) essayer en mettant en début de ligne des espaces puis 
essayer avec une seule tabulation : gvim effectue une coloration 
syntaxique différente ! le Makefile avec des espace en début d'une ligne 
de commande ne fonctionnera pas.


En règle général une cible d'un Makefile s'écrit :

cible: dépendances
[TAB]Ligne de commande

Un très bon tutoriel (en français en plus) que je conseil vivement : 
http://gl.developpez.com/tutoriel/outil/makefile/Makefile.pdf


Attention également au variable dans un Makefile : en général $(variable).
Si on écrit en shell par exemple un :
  for i in `find /tmp | grep txt` ; do echo $i ; done
on écrira dans un Makefile cette commande de la manière suivante :
  for i in `find /tmp | grep txt` ; do echo $$i ; done

Je suis amené régulièrement à écrire des Makefile parfois assez 
complexes et me fait souvent piégé avec ce genre d'écriture...


Si vous le souhaitais je serais prêt à organiser un Atelier Makefile 
pour Linux-Azur (peut-être courant octobre) : avis aux amateurs ( ?? )


A+ et à vous lire,

Vincent





Diffusez cette liste aupres de vos relations :-)
   Linux Azur : http://www.linux-azur.org
   Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***





Re: [Tech] Makefile

2010-09-03 Par sujet Léo Testard

 Salut Vincent :-)

et merci pour ces explications... en fait la ligne tabstop=4 était bien 
présente dans mon virmc mais il y avait une autre ligne qui le faisait 
insérer des espaces au lieu d'une tabulation... bref, c'est résolu... à 
part ce problème de variables. Quand tu dis qu'il faut écrire $$i celà 
faut pour les variables Bash seulement ou aussi pour celles définies 
dans mon Makefile ? Comme $(CC) ou $(CFLAGS) ?
Bon, d'autre part, je viens de me rendre compte que ce que je faisais 
était pas très clean, utiliser comme nom CC et CFLAGS pour des variables 
qui désigne en fait un compilateur et des options pour C++... quelqu'un 
connait le nom correct à utiliser pour ce langage ? J'ai lu quelque part 
quelque chose du genre CXXFLAGS mais je ne suis pas tout à fait sûr :)


Le 03/09/2010 15:07, Vincent BRACH a écrit :

Salut Léo et bonjour à tous,
justement je me demandais si Make accordait une réelle importance à 
l'indentation. J'ai configuré mon Vim pour insérer 4 espaces au lieu 
d'une tab (plus standard), mais peut être que j'ai mal fait... si 
quelqu'un a plus de précisions sur le sujet :)
Tout à fait : l'outil make accorde la plus grande importance à 
l'écriture du Makefile au niveau de ce que tu appelles l'indentation : 
je dirais plus au niveau rubrique.
- Si une ligne ne commence pas par une tabulation il s'agit de 
déclaration de variables (ou constantes) et/ou d'une cible dans le 
Makefile.
- Si une ligne commence par une tabulation (attention j'ai bien dit 
une tabulation et pas plusieurs espaces) il s'agit d'une ligne 
d'exécution d'une commande (en générale dans une cible).


Petit test entre geek :) :
gvim (trés bon éditeur, n'en déplaise a certains puristes) sait 
d'ailleurs très bien faire la différence : faites le test : écrire un 
Makefile dans gvim avec une cible (.o:.c par exemple) et à la ligne 
suivante écrivez votre ligne de commande (par exemple un @cat 
/etc/issue) essayer en mettant en début de ligne des espaces puis 
essayer avec une seule tabulation : gvim effectue une coloration 
syntaxique différente ! le Makefile avec des espace en début d'une 
ligne de commande ne fonctionnera pas.


En règle général une cible d'un Makefile s'écrit :

cible: dépendances
[TAB]Ligne de commande

Un très bon tutoriel (en français en plus) que je conseil vivement : 
http://gl.developpez.com/tutoriel/outil/makefile/Makefile.pdf


Attention également au variable dans un Makefile : en général 
$(variable).

Si on écrit en shell par exemple un :
  for i in `find /tmp | grep txt` ; do echo $i ; done
on écrira dans un Makefile cette commande de la manière suivante :
  for i in `find /tmp | grep txt` ; do echo $$i ; done

Je suis amené régulièrement à écrire des Makefile parfois assez 
complexes et me fait souvent piégé avec ce genre d'écriture...


Si vous le souhaitais je serais prêt à organiser un Atelier Makefile 
pour Linux-Azur (peut-être courant octobre) : avis aux amateurs ( ?? )


A+ et à vous lire,

Vincent





Diffusez cette liste aupres de vos relations :-)
   Linux Azur : http://www.linux-azur.org
   Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***






Diffusez cette liste aupres de vos relations :-)
   Linux Azur : http://www.linux-azur.org
   Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***





RE: [Tech] Makefile

2010-09-03 Par sujet Bélénos Le Gaulois



 Date: Fri, 3 Sep 2010 15:07:29 +0200
 From: v.br...@smie.com
 To: linux06@linuxfr.org
 Subject: Re: [Tech] Makefile
 
 Salut Léo et bonjour à tous,
  justement je me demandais si Make accordait une réelle importance à 
  l'indentation. J'ai configuré mon Vim pour insérer 4 espaces au lieu 
  d'une tab (plus standard), mais peut être que j'ai mal fait... si 
  quelqu'un a plus de précisions sur le sujet :)
 Tout à fait : l'outil make accorde la plus grande importance à 
 l'écriture du Makefile au niveau de ce que tu appelles l'indentation : 
 je dirais plus au niveau rubrique.
 - Si une ligne ne commence pas par une tabulation il s'agit de 
 déclaration de variables (ou constantes) et/ou d'une cible dans le Makefile.
 - Si une ligne commence par une tabulation (attention j'ai bien dit une 
 tabulation et pas plusieurs espaces) il s'agit d'une ligne d'exécution 
 d'une commande (en générale dans une cible).
 
 Petit test entre geek :) :
 gvim (trés bon éditeur, n'en déplaise a certains puristes) sait 
 d'ailleurs très bien faire la différence : faites le test : écrire un 
 Makefile dans gvim avec une cible (.o:.c par exemple) et à la ligne 
 suivante écrivez votre ligne de commande (par exemple un @cat 
 /etc/issue) essayer en mettant en début de ligne des espaces puis 
 essayer avec une seule tabulation : gvim effectue une coloration 
 syntaxique différente ! le Makefile avec des espace en début d'une ligne 
 de commande ne fonctionnera pas.
 
 En règle général une cible d'un Makefile s'écrit :
 
 cible: dépendances
 [TAB]Ligne de commande
 
 Un très bon tutoriel (en français en plus) que je conseil vivement : 
 http://gl.developpez.com/tutoriel/outil/makefile/Makefile.pdf
 
 Attention également au variable dans un Makefile : en général $(variable).
 Si on écrit en shell par exemple un :
for i in `find /tmp | grep txt` ; do echo $i ; done
 on écrira dans un Makefile cette commande de la manière suivante :
for i in `find /tmp | grep txt` ; do echo $$i ; done
 
 Je suis amené régulièrement à écrire des Makefile parfois assez 
 complexes et me fait souvent piégé avec ce genre d'écriture...
 
 Si vous le souhaitais je serais prêt à organiser un Atelier Makefile 
 pour Linux-Azur (peut-être courant octobre) : avis aux amateurs ( ?? )
 
 A+ et à vous lire,
 
 Vincent
 

Bonjour Vincent,

Je serai le premier intéressé par cet atelier car il s'agit d'une des choses 
qui m'intéressent en ce moment.

Alors merci pour ta proposition.

Sylvio(06700)
06 68 85 44 03
  
 Diffusez cette liste aupres de vos relations :-)
Linux Azur : http://www.linux-azur.org
Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***





Re: [Tech] Makefile

2010-09-03 Par sujet Vincent BRACH

Re-salut Léo et la liste

[.../...]


Quand tu dis qu'il faut écrire $$i celà
faut pour les variables Bash seulement ou aussi pour celles définies
dans mon Makefile ? Comme $(CC) ou $(CFLAGS) ?
   

Uniquement pour ce que tu appelles une variable bash :
si en bash tu fait le coup du find de mon précédent mail, avec dans une 
boucle une variable $i et bien en Makefile cette variable $i sera 
accessible à travers $$i
Par contre si tu définis (en début de ton Makefile par exemple) un 
CC=/usr/bin/gcc et bien ensuite dans ta ligne d'exécution d'une cible tu 
utiliseras $(CC)


Essais ce petit Makefile :

all:
echo CPP=$(CPP)
echo CC=$(CC)
echo LD=$(LD)

(attention à ne pas copier/coller brutalement : bien mettre des 
tabulation en début de ligne :-) )

Bon, d'autre part, je viens de me rendre compte que ce que je faisais
était pas très clean, utiliser comme nom CC et CFLAGS pour des variables
qui désigne en fait un compilateur et des options pour C++... quelqu'un
connait le nom correct à utiliser pour ce langage ? J'ai lu quelque part
quelque chose du genre CXXFLAGS mais je ne suis pas tout à fait sûr :)
   
Je n'ai jamais fais de Mafefile pour une compilation en C++ mais je 
crois que gcc (frontend de base de la chaine de compilation) se base sur 
l'extension du fichier .c ou .cpp : 
http://gcc.gnu.org/onlinedocs/gcc/Invoking-G_002b_002b.html#Invoking-G_002b_002b


Je ne connais pas trop CXXFLAGS, mais ça a l'air d'être l'équivalent du 
CFLAG. Plus d'infos ici : http://linuxreviews.org/howtos/compiling/#toc1
Donc je pense que ton compilateur reste CC=gcc, tes flags de compilation 
CFLAGS, et tes flags de linkage LDFLAGS (noms classiques)


@+
Vincent




Diffusez cette liste aupres de vos relations :-)
   Linux Azur : http://www.linux-azur.org
   Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***





Re: [Tech] Makefile

2010-09-03 Par sujet Vincent BRACH

Salut Sylvio et la liste,

Bonjour Vincent,

Je serai le premier intéressé par cet atelier car il s'agit d'une des 
choses qui m'intéressent en ce moment.
Ok pas de soucis, si il y a d'autres personnes intéressées pas de 
soucis. Léo cela t'intéresserais également ? (ça fera déjà +2 ;) )


J'avais déjà fait un atelier  Initiation au langage C  qui comportait 
un chapitre sur le Makefile, mais pourquoi pas faire un atelier 
uniquement consacré à l'outil make (il y a tellement à dire et à voir).

Alors merci pour ta proposition.

De rien :-)

@+
Vincent



Diffusez cette liste aupres de vos relations :-)
   Linux Azur : http://www.linux-azur.org
   Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***





Re: [Tech] Makefile

2010-09-03 Par sujet Leo Testard

Re salut Vincent

tu oublies un souci, dans les FLAGS, j'en utilises certains qui sont 
quand même propre au C++... ça ne serait pas un souci si l'intégralité 
du code était en C++, mais il risque bientôt de voir apparaitre des 
fichiers uniquement en bon vieux C... qui auront besoin de leur variable 
FLAGS aussi... enfin bon, je commence à me débrouiller, grâce à vos 
réponses à tous j'ai enfin un Makefile qui marche, sur Ubuntu. Mais si 
un atelier Makefile se profile, j'en serais sûrement :)


Merci à tous

On 03/09/2010 16:18, Vincent BRACH wrote:

Re-salut Léo et la liste

[.../...]


Quand tu dis qu'il faut écrire $$i celà
faut pour les variables Bash seulement ou aussi pour celles définies
dans mon Makefile ? Comme $(CC) ou $(CFLAGS) ?

Uniquement pour ce que tu appelles une variable bash :
si en bash tu fait le coup du find de mon précédent mail, avec dans une
boucle une variable $i et bien en Makefile cette variable $i sera
accessible à travers $$i
Par contre si tu définis (en début de ton Makefile par exemple) un
CC=/usr/bin/gcc et bien ensuite dans ta ligne d'exécution d'une cible tu
utiliseras $(CC)

Essais ce petit Makefile :

all:
echo CPP=$(CPP)
echo CC=$(CC)
echo LD=$(LD)

(attention à ne pas copier/coller brutalement : bien mettre des
tabulation en début de ligne :-) )

Bon, d'autre part, je viens de me rendre compte que ce que je faisais
était pas très clean, utiliser comme nom CC et CFLAGS pour des variables
qui désigne en fait un compilateur et des options pour C++... quelqu'un
connait le nom correct à utiliser pour ce langage ? J'ai lu quelque part
quelque chose du genre CXXFLAGS mais je ne suis pas tout à fait sûr :)

Je n'ai jamais fais de Mafefile pour une compilation en C++ mais je
crois que gcc (frontend de base de la chaine de compilation) se base sur
l'extension du fichier .c ou .cpp :
http://gcc.gnu.org/onlinedocs/gcc/Invoking-G_002b_002b.html#Invoking-G_002b_002b


Je ne connais pas trop CXXFLAGS, mais ça a l'air d'être l'équivalent du
CFLAG. Plus d'infos ici : http://linuxreviews.org/howtos/compiling/#toc1
Donc je pense que ton compilateur reste CC=gcc, tes flags de compilation
CFLAGS, et tes flags de linkage LDFLAGS (noms classiques)

@+
Vincent




Diffusez cette liste aupres de vos relations :-)
Linux Azur : http://www.linux-azur.org
Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***






Diffusez cette liste aupres de vos relations :-)
   Linux Azur : http://www.linux-azur.org
   Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***





Re: [Tech] Makefile

2010-09-03 Par sujet Vincent BRACH

Re :)

Re salut Vincent

tu oublies un souci, dans les FLAGS, j'en utilises certains qui sont
quand même propre au C++... ça ne serait pas un souci si l'intégralité
du code était en C++, mais il risque bientôt de voir apparaitre des
fichiers uniquement en bon vieux C... qui auront besoin de leur variable
FLAGS aussi...
Oui mais ce que j'écrivais précédemment ne remet absolument pas en cause 
le faite d'avoir du C et du C++ (au contraire)

Tu peux très bien écrire un Makefile du style :
CC=gcc
CFLAGS= tes flags spécifiques pour la compilation du C
CPPFLAGS = tes flags spécifiques pour la compilation du C++

.o: .c
$(CC) $(CFLAGS) -c $^ -o $@

.o:.cpp
$(CC) $(CPPFLAGS) -c $^ -o $@

et ça règle le problème facilement.

enfin bon, je commence à me débrouiller, grâce à vos
réponses à tous j'ai enfin un Makefile qui marche, sur Ubuntu.

Ok super :-)

Mais si un atelier Makefile se profile, j'en serais sûrement :)
   

Ok je note : +2 donc...

@+
Vincent



Diffusez cette liste aupres de vos relations :-)
   Linux Azur : http://www.linux-azur.org
   Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***





Re: [Tech] Makefile

2010-09-03 Par sujet Denis Arnaud
Hello,

Le 2 septembre 2010 22:40, Léo Testard leo.test...@gmail.com a écrit :

 Je me demandais s'il y avait parmi vous des connaisseurs de... Makefile


puisque le fil de discussion commence à grandir, je ne peux que recommander
de regarder des outils de plus haut niveau, par exemple, pour rester à base
de Makefile, les Autotools (autoconf, automake, make et libtool) et CMake.
Sinon, il y a aussi SCons, mais il faut aimer le Python.
Par contre, je ne sais pas comment utiliser nasm depuis les Autotools
(Makefile.am), mais j'imagine que cela doit se trouver facilement par un
coup de Google. Idem pour CMake.

Cordialement

Denis

 Diffusez cette liste aupres de vos relations :-)
Linux Azur : http://www.linux-azur.org
Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***





Re: [Tech] Makefile

2010-09-02 Par sujet Jean-Max Reymond

Le 02/09/2010 22:40, Léo Testard a écrit :

Hello la liste :-)

Je me demandais s'il y avait parmi vous des connaisseurs de... Makefile
je suis en train d'en écrire un pour ce sur quoi je suis en train de
coder actuellement... et j'obtiens une erreur d'autant plus étrange
qu'elle ne se manifeste pas toujours de la même façon.
Voici déjà le code : http://omploader.org/vNWY1Ng/Makefile

L'erreur en question se produit à la ligne 11 (et 14). Sur mon FreeBSD,
ça donne :
Makefile, line 11: Need an operator
Makefile, line 14: Need an operator
Sur le PC d'un collège, sur Ubuntu, il obtient une erreur différente :
  Makefile:12: *** Séparateur manquant. Arrêt.

à noter que quand je copie et modifie à peine un Makefile écrit par
quelqu'un d'autre, ça semble fonctionner, mais dès que j'ajoute des
lignes ou des sections, cette erreur revient. J'aurais vraiment
bidouillé le fichier n'importe comment pour essayer de résoudre ce
problème, mais sans succès.

Merci d'avance et à bientôt :)
en regardant très rapidement, je ne suis pas certain que toutes les 
tabulations soient présentes par exemple devant @mv et @cat
mais il est tard et ça fait bien 10 ans que je n'ai plus manipulé ce 
superbe outil

bonne nuit

--
Jean-Max Reymond
CKR Solutions Open Source http://www.ckr-solutions.com

Diffusez cette liste aupres de vos relations :-)
   Linux Azur : http://www.linux-azur.org
   Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***





Re: [Tech] Makefile

2010-09-02 Par sujet Léo Testard
Hello Jean-Max

justement je me demandais si Make accordait une réelle importance à
l'indentation. J'ai configuré mon Vim pour insérer 4 espaces au lieu d'une
tab (plus standard), mais peut être que j'ai mal fait... si quelqu'un a plus
de précisions sur le sujet :)
j'en profite pour rectifier mon message précédent : l'erreur qu'obtient mon
collègue est bien également à ligne 11 comme moi, et non 12

Bonne nuit à tous

Le 2 septembre 2010 23:18, Jean-Max Reymond jmreym...@free.fr a écrit :

 Le 02/09/2010 22:40, Léo Testard a écrit :

  Hello la liste :-)

 Je me demandais s'il y avait parmi vous des connaisseurs de... Makefile
 je suis en train d'en écrire un pour ce sur quoi je suis en train de
 coder actuellement... et j'obtiens une erreur d'autant plus étrange
 qu'elle ne se manifeste pas toujours de la même façon.
 Voici déjà le code : http://omploader.org/vNWY1Ng/Makefile

 L'erreur en question se produit à la ligne 11 (et 14). Sur mon FreeBSD,
 ça donne :
 Makefile, line 11: Need an operator
 Makefile, line 14: Need an operator
 Sur le PC d'un collège, sur Ubuntu, il obtient une erreur différente :
  Makefile:12: *** Séparateur manquant. Arrêt.

 à noter que quand je copie et modifie à peine un Makefile écrit par
 quelqu'un d'autre, ça semble fonctionner, mais dès que j'ajoute des
 lignes ou des sections, cette erreur revient. J'aurais vraiment
 bidouillé le fichier n'importe comment pour essayer de résoudre ce
 problème, mais sans succès.

 Merci d'avance et à bientôt :)

 en regardant très rapidement, je ne suis pas certain que toutes les
 tabulations soient présentes par exemple devant @mv et @cat
 mais il est tard et ça fait bien 10 ans que je n'ai plus manipulé ce
 superbe outil
 bonne nuit

 --
 Jean-Max Reymond
 CKR Solutions Open Source http://www.ckr-solutions.com

 Diffusez cette liste aupres de vos relations :-)
   Linux Azur : http://www.linux-azur.org
   Vous etes responsable de vos propos.
 *** Merci de rediger sans SMS, ni HTML ni PJ ***





 Diffusez cette liste aupres de vos relations :-)
Linux Azur : http://www.linux-azur.org
Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***





Re: [Tech] Makefile

2010-09-02 Par sujet Philippe Vienne
Salut
Il faut que dans ton makefile, les lignes 11 et 14 soyent vides de tout
caractère (pas de tabulation)

--
Linuxement
Philippe Vienne
Le 2 sept. 2010 22:48, Léo Testard leo.test...@gmail.com a écrit :

 Hello la liste :-)

 Je me demandais s'il y avait parmi vous des connaisseurs de... Makefile
 je suis en train d'en écrire un pour ce sur quoi je suis en train de coder
 actuellement... et j'obtiens une erreur d'autant plus étrange qu'elle ne se
 manifeste pas toujours de la même façon.
 Voici déjà le code : http://omploader.org/vNWY1Ng/Makefile

 L'erreur en question se produit à la ligne 11 (et 14). Sur mon FreeBSD, ça
 donne :
  Makefile, line 11: Need an operator
  Makefile, line 14: Need an operator
 Sur le PC d'un collège, sur Ubuntu, il obtient une erreur différente :
  Makefile:12: *** Séparateur manquant. Arrêt.

 à noter que quand je copie et modifie à peine un Makefile écrit par
 quelqu'un d'autre, ça semble fonctionner, mais dès que j'ajoute des lignes
 ou des sections, cette erreur revient. J'aurais vraiment bidouillé le
 fichier n'importe comment pour essayer de résoudre ce problème, mais sans
 succès.

 Merci d'avance et à bientôt :)


 Diffusez cette liste aupres de vos relations :-)
Linux Azur : http://www.linux-azur.org
Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***





Re: [Tech] Makefile

2010-09-02 Par sujet Benoit LAURENT

Le 02/09/2010 22:40, Léo Testard a écrit :

Hello la liste :-)

Je me demandais s'il y avait parmi vous des connaisseurs de... Makefile
je suis en train d'en écrire un pour ce sur quoi je suis en train de 
coder actuellement... et j'obtiens une erreur d'autant plus étrange 
qu'elle ne se manifeste pas toujours de la même façon.

Voici déjà le code : http://omploader.org/vNWY1Ng/Makefile

L'erreur en question se produit à la ligne 11 (et 14). Sur mon 
FreeBSD, ça donne :

 Makefile, line 11: Need an operator
 Makefile, line 14: Need an operator
Sur le PC d'un collège, sur Ubuntu, il obtient une erreur différente :
 Makefile:12: *** Séparateur manquant. Arrêt.

à noter que quand je copie et modifie à peine un Makefile écrit par 
quelqu'un d'autre, ça semble fonctionner, mais dès que j'ajoute des 
lignes ou des sections, cette erreur revient. J'aurais vraiment 
bidouillé le fichier n'importe comment pour essayer de résoudre ce 
problème, mais sans succès.


Merci d'avance et à bientôt :)


Hello,
Met des tabulations au lieu des espaces devant la ligne 11 et 14. (comme 
pour les lignes suivantes).


Benoit

Diffusez cette liste aupres de vos relations :-)
   Linux Azur : http://www.linux-azur.org
   Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***





Re: [Tech] Makefile

2010-09-02 Par sujet Léo Testard
Salut Philippe

... Vides de tout caractère ? o.O
Excuse moi mais j'ai du mal comprendre un truc, tu voudrais dire laisser une
ligne blanche ? Je crois pas que ça soit utile dans le cas présent...

Le 2 septembre 2010 23:02, Philippe Vienne philoumail...@gmail.com a écrit
:

 Salut
 Il faut que dans ton makefile, les lignes 11 et 14 soyent vides de tout
 caractère (pas de tabulation)

 --
 Linuxement
 Philippe Vienne
 Le 2 sept. 2010 22:48, Léo Testard leo.test...@gmail.com a écrit :

 Hello la liste :-)

 Je me demandais s'il y avait parmi vous des connaisseurs de... Makefile
 je suis en train d'en écrire un pour ce sur quoi je suis en train de coder
 actuellement... et j'obtiens une erreur d'autant plus étrange qu'elle ne se
 manifeste pas toujours de la même façon.
 Voici déjà le code : http://omploader.org/vNWY1Ng/Makefile

 L'erreur en question se produit à la ligne 11 (et 14). Sur mon FreeBSD, ça
 donne :
  Makefile, line 11: Need an operator
  Makefile, line 14: Need an operator
 Sur le PC d'un collège, sur Ubuntu, il obtient une erreur différente :
  Makefile:12: *** Séparateur manquant. Arrêt.

 à noter que quand je copie et modifie à peine un Makefile écrit par
 quelqu'un d'autre, ça semble fonctionner, mais dès que j'ajoute des lignes
 ou des sections, cette erreur revient. J'aurais vraiment bidouillé le
 fichier n'importe comment pour essayer de résoudre ce problème, mais sans
 succès.

 Merci d'avance et à bientôt :)



 Diffusez cette liste aupres de vos relations :-)
Linux Azur : http://www.linux-azur.org
Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***





Re: [Tech] Makefile

2010-09-02 Par sujet Léo Testard
Merci bien, c'était là le problème, maintenant, il me reste à reconfigurer
Vim et choisir entre le laisser insérer sa tab de base (qui fait la taille
de 8 espaces j'aime pas trop ça) ou alors 4 espaces...

maintenant, il semble se produire des erreurs plus ou moins aléatoires avec
les variables que je définis au début, on dirait qu'il n'arrive pas à les
insérer dans les commandes, sur la sortie, des fois, ça laisse un vide,
comme par exemple
nasm -f bin  -o boot
le boot.s ayant disparu au passage... pareil avec la cible de la commande de
linkage... et chez mon collègue, ce sont les CFLAGS qui n'apparaissent pas
ce souci commence à m'agacer, il n'y a rien qui m'énerve plus que quand je
perd du temps de codage à essayer de configurer mon environnement de travail
et que ça ne fonctionne pas, mais bon, je n'ai pas trop l'habitude d'écrire
mes propres Makefile, peut être que je m'y prends mal avec les déclarations.

Merci en tous cas, à bientôt

Le 2 septembre 2010 23:33, Benoit LAURENT ad...@benlau.fr a écrit :

  Le 02/09/2010 22:40, Léo Testard a écrit :

 Hello la liste :-)

  Je me demandais s'il y avait parmi vous des connaisseurs de... Makefile
 je suis en train d'en écrire un pour ce sur quoi je suis en train de coder
 actuellement... et j'obtiens une erreur d'autant plus étrange qu'elle ne se
 manifeste pas toujours de la même façon.
 Voici déjà le code : http://omploader.org/vNWY1Ng/Makefile

  L'erreur en question se produit à la ligne 11 (et 14). Sur mon FreeBSD,
 ça donne :
  Makefile, line 11: Need an operator
  Makefile, line 14: Need an operator
 Sur le PC d'un collège, sur Ubuntu, il obtient une erreur différente :
  Makefile:12: *** Séparateur manquant. Arrêt.

  à noter que quand je copie et modifie à peine un Makefile écrit par
 quelqu'un d'autre, ça semble fonctionner, mais dès que j'ajoute des lignes
 ou des sections, cette erreur revient. J'aurais vraiment bidouillé le
 fichier n'importe comment pour essayer de résoudre ce problème, mais sans
 succès.

  Merci d'avance et à bientôt :)


 Hello,
 Met des tabulations au lieu des espaces devant la ligne 11 et 14. (comme
 pour les lignes suivantes).

 Benoit


 Diffusez cette liste aupres de vos relations :-)
Linux Azur : http://www.linux-azur.org
Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***





RE: [Tech] Makefile

2010-09-02 Par sujet Bélénos Le Gaulois

Bonjour à tous,

Je suis votre conversation qui est très instructive, mais je me pose une 
question qui va surement vous paraitre très bête:
Quel est l'intérêt d'utiliser des variables ou plutôt des constantes dans ce 
cas précis) quand leur frappe est plus longue
que la saisie de la commande elle même?








$(AS) $(ASFLAGS) pour nasm -f bin

Sylvio (06700)
06 68 85 44 03



Date: Thu, 2 Sep 2010 23:55:19 +0200
Subject: Re: [Tech] Makefile
From: leo.test...@gmail.com
To: linux06@linuxfr.org

Merci bien, c'était là le problème, maintenant, il me reste à reconfigurer Vim 
et choisir entre le laisser insérer sa tab de base (qui fait la taille de 8 
espaces j'aime pas trop ça) ou alors 4 espaces...

maintenant, il semble se produire des erreurs plus ou moins aléatoires avec les 
variables que je définis au début, on dirait qu'il n'arrive pas à les insérer 
dans les commandes, sur la sortie, des fois, ça laisse un vide, comme par 
exemple
nasm -f bin  -o bootle boot.s ayant disparu au passage... pareil avec la 
cible de la commande de linkage... et chez mon collègue, ce sont les CFLAGS qui 
n'apparaissent pasce souci commence à m'agacer, il n'y a rien qui m'énerve plus 
que quand je perd du temps de codage à essayer de configurer mon environnement 
de travail et que ça ne fonctionne pas, mais bon, je n'ai pas trop l'habitude 
d'écrire mes propres Makefile, peut être que je m'y prends mal avec les 
déclarations.

Merci en tous cas, à bientôt

Le 2 septembre 2010 23:33, Benoit LAURENT ad...@benlau.fr a écrit :




  


Le 02/09/2010 22:40, Léo Testard a écrit :
Hello la liste :-)
  

  
  Je me demandais s'il y avait parmi vous des connaisseurs de...
Makefile
  je suis en train d'en écrire un pour ce sur quoi je suis en
train de coder actuellement... et j'obtiens une erreur d'autant plus
étrange qu'elle ne se manifeste pas toujours de la même façon.
  Voici déjà le code : http://omploader.org/vNWY1Ng/Makefile

  

  
  L'erreur en question se produit à la ligne 11 (et 14). Sur mon
FreeBSD, ça donne :
   Makefile, line 11: Need an operator
   Makefile, line 14: Need an operator
  Sur le PC d'un collège, sur Ubuntu, il obtient une erreur
différente :
   Makefile:12: *** Séparateur manquant. Arrêt.
  

  
  à noter que quand je copie et modifie à peine un Makefile écrit
par quelqu'un d'autre, ça semble fonctionner, mais dès que j'ajoute des
lignes ou des sections, cette erreur revient. J'aurais vraiment
bidouillé le fichier n'importe comment pour essayer de résoudre ce
problème, mais sans succès.
  

  
  Merci d'avance et à bientôt :)



Hello,

Met des tabulations au lieu des espaces devant la ligne 11 et 14.
(comme pour les lignes suivantes).



Benoit




  
 Diffusez cette liste aupres de vos relations :-)
Linux Azur : http://www.linux-azur.org
Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***





Re: [Tech] Makefile

2010-09-02 Par sujet Léo Testard
Salut Bélénos :)
Effectivement dans la mesure où c'est moins long, on peut se demander quel
est l'intérêt. Mais imagine qu'un jour je doive rajouter des options à NASM.
Je n'ai qu'à modifier une seule fois la variable ASFLAGS plutôt que chercher
dans le Makefile toutes ses occurences. Bon, dans ce cas là, c'est superflu,
mais bon, j'essaie de faire ça clean. Et puis quand tu vois la taille des
options pour G++ par exemple, c'est déjà plus justifié. En outre, il me
semble que d'une part on peut utiliser des variables définies dans un autre
Makefile (je ne sais pas comment... à confirmer par quelqu'un ayant plus
l'habitude), par ailleurs, certains variables ont un nom stanard, si on ne
les définit pas dans le Makefile, je crois qu'elles sont déjà définies par
Make, comme $(AS) ou $(CC). D'ailleurs, si j'enlève la déclaration d'$(AS),
mon FreeBSD tente d'utiliser /usr/bin/as au lieu de nasm... donc la variable
$(AS) est déjà définie et pointe dessus.
Enfin, je peux me tromper masi c'est ce que j'ai cru comprendre. Que
quelqu'un me rectifie le cas échéant.

Bonne soirée :)

Le 3 septembre 2010 00:08, Bélénos Le Gaulois beleno...@hotmail.fr a écrit
:

  Bonjour à tous,

 Je suis votre conversation qui est très instructive, mais je me pose une
 question qui va surement vous paraitre très bête:
 Quel est l'intérêt d'utiliser des variables ou plutôt des constantes dans
 ce cas précis) quand leur frappe est plus longue
 que la saisie de la commande elle même?

 $(AS) $(ASFLAGS) pour nasm -f bin

 Sylvio (06700)
 06 68 85 44 03



 --
 Date: Thu, 2 Sep 2010 23:55:19 +0200
 Subject: Re: [Tech] Makefile
 From: leo.test...@gmail.com
 To: linux06@linuxfr.org


 Merci bien, c'était là le problème, maintenant, il me reste à reconfigurer
 Vim et choisir entre le laisser insérer sa tab de base (qui fait la taille
 de 8 espaces j'aime pas trop ça) ou alors 4 espaces...

 maintenant, il semble se produire des erreurs plus ou moins aléatoires avec
 les variables que je définis au début, on dirait qu'il n'arrive pas à les
 insérer dans les commandes, sur la sortie, des fois, ça laisse un vide,
 comme par exemple
 nasm -f bin  -o boot
 le boot.s ayant disparu au passage... pareil avec la cible de la commande
 de linkage... et chez mon collègue, ce sont les CFLAGS qui n'apparaissent
 pas
 ce souci commence à m'agacer, il n'y a rien qui m'énerve plus que quand je
 perd du temps de codage à essayer de configurer mon environnement de travail
 et que ça ne fonctionne pas, mais bon, je n'ai pas trop l'habitude d'écrire
 mes propres Makefile, peut être que je m'y prends mal avec les déclarations.

 Merci en tous cas, à bientôt

 Le 2 septembre 2010 23:33, Benoit LAURENT ad...@benlau.fr a écrit :

  Le 02/09/2010 22:40, Léo Testard a écrit :

 Hello la liste :-)

  Je me demandais s'il y avait parmi vous des connaisseurs de... Makefile
 je suis en train d'en écrire un pour ce sur quoi je suis en train de coder
 actuellement... et j'obtiens une erreur d'autant plus étrange qu'elle ne se
 manifeste pas toujours de la même façon.
 Voici déjà le code : http://omploader.org/vNWY1Ng/Makefile

  L'erreur en question se produit à la ligne 11 (et 14). Sur mon FreeBSD,
 ça donne :
  Makefile, line 11: Need an operator
  Makefile, line 14: Need an operator
 Sur le PC d'un collège, sur Ubuntu, il obtient une erreur différente :
  Makefile:12: *** Séparateur manquant. Arrêt.

  à noter que quand je copie et modifie à peine un Makefile écrit par
 quelqu'un d'autre, ça semble fonctionner, mais dès que j'ajoute des lignes
 ou des sections, cette erreur revient. J'aurais vraiment bidouillé le
 fichier n'importe comment pour essayer de résoudre ce problème, mais sans
 succès.

  Merci d'avance et à bientôt :)


 Hello,
 Met des tabulations au lieu des espaces devant la ligne 11 et 14. (comme
 pour les lignes suivantes).

 Benoit




 Diffusez cette liste aupres de vos relations :-)
Linux Azur : http://www.linux-azur.org
Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***





RE: [Tech] Makefile

2010-09-02 Par sujet Bélénos Le Gaulois

Je comprends mieux, merci de m'avoir éclairé sur le sujet.

Bonne soirée.

Sylvio (06700)
06 68 85 44 03

Date: Fri, 3 Sep 2010 00:18:53 +0200
Subject: Re: [Tech] Makefile
From: leo.test...@gmail.com
To: linux06@linuxfr.org

Salut Bélénos :)Effectivement dans la mesure où c'est moins long, on peut se 
demander quel est l'intérêt. Mais imagine qu'un jour je doive rajouter des 
options à NASM. Je n'ai qu'à modifier une seule fois la variable ASFLAGS plutôt 
que chercher dans le Makefile toutes ses occurences. Bon, dans ce cas là, c'est 
superflu, mais bon, j'essaie de faire ça clean. Et puis quand tu vois la taille 
des options pour G++ par exemple, c'est déjà plus justifié. En outre, il me 
semble que d'une part on peut utiliser des variables définies dans un autre 
Makefile (je ne sais pas comment... à confirmer par quelqu'un ayant plus 
l'habitude), par ailleurs, certains variables ont un nom stanard, si on ne les 
définit pas dans le Makefile, je crois qu'elles sont déjà définies par Make, 
comme $(AS) ou $(CC). D'ailleurs, si j'enlève la déclaration d'$(AS), mon 
FreeBSD tente d'utiliser /usr/bin/as au lieu de nasm... donc la variable $(AS) 
est déjà définie et pointe dessus.
Enfin, je peux me tromper masi c'est ce que j'ai cru comprendre. Que quelqu'un 
me rectifie le cas échéant.
Bonne soirée :)

Le 3 septembre 2010 00:08, Bélénos Le Gaulois beleno...@hotmail.fr a écrit :






Bonjour à tous,

Je suis votre conversation qui est très instructive, mais je me pose une 
question qui va surement vous paraitre très bête:
Quel est l'intérêt d'utiliser des variables ou plutôt des constantes dans ce 
cas précis) quand leur frappe est plus longue

que la saisie de la commande elle même?








$(AS) $(ASFLAGS) pour nasm -f bin

Sylvio (06700)
06 68 85 44 03



Date: Thu, 2 Sep 2010 23:55:19 +0200
Subject: Re: [Tech] Makefile
From: leo.test...@gmail.com
To: linux06@linuxfr.org


Merci bien, c'était là le problème, maintenant, il me reste à reconfigurer Vim 
et choisir entre le laisser insérer sa tab de base (qui fait la taille de 8 
espaces j'aime pas trop ça) ou alors 4 espaces...


maintenant, il semble se produire des erreurs plus ou moins aléatoires avec les 
variables que je définis au début, on dirait qu'il n'arrive pas à les insérer 
dans les commandes, sur la sortie, des fois, ça laisse un vide, comme par 
exemple

nasm -f bin  -o bootle boot.s ayant disparu au passage... pareil avec la 
cible de la commande de linkage... et chez mon collègue, ce sont les CFLAGS qui 
n'apparaissent pasce souci commence à m'agacer, il n'y a rien qui m'énerve plus 
que quand je perd du temps de codage à essayer de configurer mon environnement 
de travail et que ça ne fonctionne pas, mais bon, je n'ai pas trop l'habitude 
d'écrire mes propres Makefile, peut être que je m'y prends mal avec les 
déclarations.


Merci en tous cas, à bientôt

Le 2 septembre 2010 23:33, Benoit LAURENT ad...@benlau.fr a écrit :





  


Le 02/09/2010 22:40, Léo Testard a écrit :
Hello la liste :-)
  

  
  Je me demandais s'il y avait parmi vous des connaisseurs de...
Makefile
  je suis en train d'en écrire un pour ce sur quoi je suis en
train de coder actuellement... et j'obtiens une erreur d'autant plus
étrange qu'elle ne se manifeste pas toujours de la même façon.
  Voici déjà le code : http://omploader.org/vNWY1Ng/Makefile


  

  
  L'erreur en question se produit à la ligne 11 (et 14). Sur mon
FreeBSD, ça donne :
   Makefile, line 11: Need an operator
   Makefile, line 14: Need an operator
  Sur le PC d'un collège, sur Ubuntu, il obtient une erreur
différente :
   Makefile:12: *** Séparateur manquant. Arrêt.
  

  
  à noter que quand je copie et modifie à peine un Makefile écrit
par quelqu'un d'autre, ça semble fonctionner, mais dès que j'ajoute des
lignes ou des sections, cette erreur revient. J'aurais vraiment
bidouillé le fichier n'importe comment pour essayer de résoudre ce
problème, mais sans succès.
  

  
  Merci d'avance et à bientôt :)



Hello,

Met des tabulations au lieu des espaces devant la ligne 11 et 14.
(comme pour les lignes suivantes).



Benoit




  

  
 Diffusez cette liste aupres de vos relations :-)
Linux Azur : http://www.linux-azur.org
Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***





Re: [Tech] Makefile

2010-09-02 Par sujet Jean-Max Reymond

Le 02/09/2010 23:55, Léo Testard a écrit :

Merci bien, c'était là le problème, maintenant, il me reste à
reconfigurer Vim et choisir entre le laisser insérer sa tab de base (qui
fait la taille de 8 espaces j'aime pas trop ça) ou alors 4 espaces...


set tabstop=4 te donnera des tabs visuellement à 4 espaces mais te 
conservera tes tabulations indispensables


--
Jean-Max Reymond
CKR Solutions Open Source http://www.ckr-solutions.com

Diffusez cette liste aupres de vos relations :-)
   Linux Azur : http://www.linux-azur.org
   Vous etes responsable de vos propos.
*** Merci de rediger sans SMS, ni HTML ni PJ ***