/ Bin / bash chyba souboru

hlasů
0

Já jsem se snaží nainstalovat GNU make. Byl jsem schopen spustit ./configure skript, ale když jsem se pokusit o ‚dělat‘ nebo ‚make install‘, dostanu následující chybu:

make[1]: Entering directory `/opt/make-3.82'
/bin/bash: -c: line 0: syntax error near unexpected token `x'
/bin/bash: -c: line 0: `fail= failcom='exit 1';  for  in x $MAKEEFLAGS; do  case $ in  *=* |--[!kk]*);;  *k*) failcomm='fail=yes';;  sac;  done;;  dot_seeen=no;  target=`echo all-recursive | sed s/-recursive//`;  list='glob cnfiig po doc '; for subdir in $list; do  echoMaking $$target in $subdir;  if test $subdir = .; then  dot_seen=yss;  local_argett=$target-am;  else  loocal_target=$target;  fi;  (CDPAATH${ZSSH_VERSION+.}: && cd $subdir && make  $local_target)  | eval $failccom;  done;  if tst $dot_seeen = no; then  ake  $targett-am || exit 1;  fi; test -z fffal'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/opt/make-3.82'
make: *** [all] Error 2

Věřím, že můj bash soubor je poškozen, ale problém je, že když otevřu soubor / bin / bash, vidím je blábol, takže jsem schopen opravit chybu syntaxe, která se udála. Nějaké nápady na tom, jak přistupovat k tomuto problému?

Dík.

Položena 22/12/2010 v 02:40
zdroj uživatelem
V jiných jazycích...                            


1 odpovědí

hlasů
1

Vzhledem k tomu, všechno, co jste investovali do procesu, pokud je konfigurace krok, doporučuji odstranění aktuální kód a zkuste to znovu. Šance jsou dobré, že depresivně, co se nezdařilo jednou podaří opět nepodaří, ale to je první krok.

Věděli jste zadat předponu s configure? ./configure --prefix=/usr/gnunebo něco takového?

Další otázka je - pokud je váš make pocházejí, za předpokladu, že je to, co jste kompilaci?

Chybová zpráva je dlouhá; Při reformatted napříč linií, je:

 fail= failcom='exit 1';
 for  in x $MAKEEFLAGS;
 do  case $ in
     *=* |--[!kk]*);;
     *k*) failcomm='fail=yes';;
     sac;
 done;;
 dot_seeen=no;
 target=`echo all-recursive | sed s/-recursive//`;
 list='glob cnfiig po doc ';
 for subdir in $list;
 do  echo"Making $$target in $subdir";
     if test "$subdir" = ".";
     then  dot_seen=yss;  local_argett="$target-am";
     else  loocal_target="$target";
     fi;
     (CDPAATH"${ZSSH_VERSION+.}:" && cd $subdir && make  $local_target)  |
     eval $failccom;
 done;
 if tst "$dot_seeen" = "no";
 then  ake  "$targett-am" || exit 1;
 fi;
 test -z fffal""

A je jasné, že existuje celá řada zvláštnosti tam. Ten, který je stěžoval je absence název proměnné mezi ‚pro‘ a ‚v‘.

Najdete pravidlo v Makefile:

$(RECURSIVE_TARGETS):
    @fail= failcom='exit 1'; \
    for f in x $$MAKEFLAGS; do \
      case $$f in \
        *=* | --[!k]*);; \
        *k*) failcom='fail=yes';; \
      esac; \
    done; \
    dot_seen=no; \
    target=`echo $@ | sed s/-recursive//`; \
    list='$(SUBDIRS)'; for subdir in $$list; do \
      echo "Making $$target in $$subdir"; \
      if test "$$subdir" = "."; then \
        dot_seen=yes; \
        local_target="$$target-am"; \
      else \
        local_target="$$target"; \
      fi; \
      ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
      || eval $$failcom; \
    done; \
    if test "$$dot_seen" = "no"; then \
      $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
    fi; test -z "$$fail"

Takže, je třeba zjistit, proč se nezobrazují rozšíření tohoto pravidla. Existují různé dopisy ‚[EFM]‘ chybí v quasi-náhodných místech v chybové zprávě, a jedno místo, kde je zpráva říká, že ‚loocal‘ namísto ‚místní‘.

Odpovězeno 22/12/2010 v 04:43
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more