2016-06-27 42 views
0

Was ist die Beziehung zwischen Makefile und Bash?Makefile und Shell Script (Bash)

Beispiel in Makefile Sie haben:

CC = gcc 

Aber wenn Sie diese in der Shell eingeben, erhalten Sie Fehler:

~# CC = gcc 
-bash: CC: command not found 

Verständlicherweise, denn es gibt Räume sind. Aber es funktioniert in Makefile.

Auch in Makefile verwenden Sie Befehl Substitution $()

$(CC) $(LDFLAGS) -o [email protected] $(OBJS) $(LIBS) 

die Variablensubstitution $CC oder ${CC} in bash sein sollte.

So Makefile-Syntax und Bash-Syntax sind unterschiedlich, aber sie bezogen scheinen, zum Beispiel [email protected].

+1

'Makefile' &' bash' Syntaxen sind unterschiedlich. Genau wie 'C' und' Python' sind verschieden. – anishsane

Antwort

3

Es gibt keine Beziehung - make und bash sind zwei separate Programme, die unterschiedliche Syntaxen analysieren. Dass sie ähnliche oder überlappende syntaktische Elemente haben, liegt wahrscheinlich daran, dass sie ungefähr zur gleichen Zeit und für einige ähnliche Zwecke entwickelt wurden, aber sie beruhen nicht auf demselben Parser oder derselben Grammatik.

Viele verschiedene Sprachen haben Sprachfunktionen geteilt entweder für eine einfache Annahme oder von imitation. Die meisten Sprachen verwenden + zusätzlich zu bedeuten, zum Beispiel, aber das macht nicht die Sprachen Zusammenhang.