Probleme de script
EwenB
Messages postés
4
Date d'inscription
Statut
Membre
Dernière intervention
-
EwenB Messages postés 4 Date d'inscription Statut Membre Dernière intervention -
EwenB Messages postés 4 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'utilise un logiciel que je peux développer/modifier sur Mandriva, et je n'arrive pas a utiliser le script pour recompiler le fichier (ce n'est pas moi qui l'ai développé et j'avoue que je debute "un peu" sur linux).
Que je lance en bash ou en sh, le même message d'erreur apparaît pour quasiment chacune des lignes : "./Makefile: line 4: OPTIF: command not found"... Du coup bien sur ca ne marche pas ;)
J'ai l'impression que mon interpreteur est mal reconnu, ou alors c'est plus subtil que ca et j'n'ai rien compris (problème de syntaxe du fichier ?)...
Si l'un de vous a du temps pour me filer un petit coup de pouce ce serait sympa !
Merci d'avance,
Ewen
J'utilise un logiciel que je peux développer/modifier sur Mandriva, et je n'arrive pas a utiliser le script pour recompiler le fichier (ce n'est pas moi qui l'ai développé et j'avoue que je debute "un peu" sur linux).
#!/bin/bash # Version O2 OPTIF = -O -g OPTIC = -O -g OPTIL = $(OPTIF) .SUFFIXES: .eso .for .f .c .o .a .SILENT: .IGNORE: # Version de developpement personnel DEVEL = ./Cast3m_devel # fichiers objets surcharges CAST = Lib_Castem/bdata.o main.o # fichiers de developpements personnels SOUDEV = $(wildcard ESODEV/*.eso) SOUDEV1 = $(wildcard ESODEV/*.for) # objets castem pour developpement OBJDEV = $(SOUDEV:.eso=.o) $(SOUDEV1:.for=.o) # librairies Castem, Gemat et standards LIBCAS = Lib_Castem/castem.a LIBGEM = Lib_Castem/esope.a LIBBLAS = /home/david/d-blas/libblas.a # END = /opt/langtools/lib/end.o LIBSTD = /usr/X11R6/lib/libX11.so default : echo 'gmake -r '$(DEVEL) $(DEVEL) : $(OBJDEV) $(CAST) $(LIBCAS) $(LIBGEM) $(LIBSTD) echo ' edition de lien pour ' $@ g77 $(OPTIL) -o $@ $(OBJDEV) $(CAST) $(LIBCAS) $(LIBGEM) $(LIBBLAS) $(LIBSTD) -lncurses -lpthread 2>&1 | grep -v 'multiple common' \ | grep -v 'previous common is here' \ | grep -v 'overridden by definition' \ | grep -v 'overridden by larger common' \ | grep -v 'larger common is here' \ | grep -v 'defined here' \ | grep -v 'overriding common' \ | grep -v 'overriding smaller common' \ | grep -v 'common is here' echo ' edition de lien terminee' .eso.o :; echo ' precompilation de ' $*.eso ./e2f_new $*.eso echo ' compilation de ' $*.f g77 $(OPTIF) -c $*.f -o $*.o .for.o :; echo ' compilation de ' $*.for cp $*.for $*.f g77 $(OPTIF) -c $*.f -o $*.o .f.o :; echo ' compilation de ' $*.f g77 $(OPTIF) -c $*.f -o $*.o .c.o :; echo ' compilation de ' $*.c gcc $(OPTIC) -c $*.c -o $*.o
Que je lance en bash ou en sh, le même message d'erreur apparaît pour quasiment chacune des lignes : "./Makefile: line 4: OPTIF: command not found"... Du coup bien sur ca ne marche pas ;)
J'ai l'impression que mon interpreteur est mal reconnu, ou alors c'est plus subtil que ca et j'n'ai rien compris (problème de syntaxe du fichier ?)...
Si l'un de vous a du temps pour me filer un petit coup de pouce ce serait sympa !
Merci d'avance,
Ewen
A voir également:
- Probleme de script
- Script vidéo youtube - Guide
- Mas script - Accueil - Windows
- Ghost script - Télécharger - Polices de caractères
- Script cmd - Guide
- Script download - Télécharger - Édition & Programmation
4 réponses
Salut,
Supprime tous les espaces dans tes variables avant et après le signe "égale", et entoure les déclarations par des quotes (simples ou doubles) :
Supprime tous les espaces dans tes variables avant et après le signe "égale", et entoure les déclarations par des quotes (simples ou doubles) :
# Version O2 OPTIF="-O -g" OPTIC="-O -g" OPTIL="$(OPTIF)";-))
Ca j'avais plus ou moins tenté et vu que ca passait, mais je n'étais pas très sur de moi...
Du coup l'erreur se décale à "./Makefile: line 8: .SUFFIXES:: command not found"
...
Merci pour ta réponse rapide !
Du coup l'erreur se décale à "./Makefile: line 8: .SUFFIXES:: command not found"
...
Merci pour ta réponse rapide !
J'ai modifié le début du fichier comme suit :
Ca passe au début, mais le wildcard n'est pas reconnu : "./Makefile: line 18: wildcard: command not found"
#!/bin/bash # Version O2 OPTIF='-O -g' OPTIC='-O -g' OPTIL=$OPTIF SUFFIXES='.eso .for .f .c .o .a' # Version de developpement personnel DEVEL=./Cast3m_devel # fichiers objets surcharges CAST='Lib_Castem/bdata.o main.o' # fichiers de developpements personnels SOUDEV=$(wildcard ESODEV/*.eso)
Ca passe au début, mais le wildcard n'est pas reconnu : "./Makefile: line 18: wildcard: command not found"