2016-06-04 1 views
-3

ALL,erreur Makefile: séparateur manquant

Voici le début de mon Makefile:

# ========================================================================= 
#  This makefile was generated by 
#  Bakefile 0.2.9 (http://www.bakefile.org) 
#  Do not modify, all changes will be overwritten! 
# ========================================================================= 


@[email protected] 

prefix = /usr/local 
exec_prefix = ${prefix} 
datarootdir = ${prefix}/share 
INSTALL = /usr/bin/install -c 
EXEEXT = 
WINDRES = @[email protected] 
SETFILE = @[email protected] 
NM = /usr/bin/nm -B 
BK_DEPS = @[email protected] 
srcdir = /home/igor/dbhandler/dbhandler 
top_srcdir = /home/igor/dbhandler 
LIBS = 
LDFLAGS_GUI = @[email protected] 
CXX = g++ 
CXXFLAGS = -g -O0 -std=c++11 
CPPFLAGS = 
LDFLAGS = 
WX_LIB_FLAVOUR = @[email protected] 
TOOLKIT = @[email protected] 
TOOLKIT_LOWERCASE = @[email protected] 
TOOLKIT_VERSION = @[email protected] 
TOOLCHAIN_FULLNAME = @[email protected] 
EXTRALIBS = @[email protected] 
EXTRALIBS_XML = @[email protected] 
EXTRALIBS_GUI = @[email protected] 
CXXWARNINGS = @[email protected] 
HOST_SUFFIX = @[email protected] 
SAMPLES_RPATH_FLAG = @[email protected] 
SAMPLES_CXXFLAGS = @[email protected] 
wx_top_builddir = @[email protected] 

Je reçois l'erreur suivante:

Makefile: 8 seaparator manquant. Arrêtez. Problème Je ne pense pas que la ligne 8 doit être tabulée car elle est juste "@ MAKE_SET @". Mais le plus important, je me demande d'où vient cette erreur. J'utilise Anjuta pour générer le Makefile et juste curieux de savoir pourquoi cette erreur apparaît.

Merci pour toute information.

+3

Que doit faire @ MAKE_SET @? Ce n'est pas une syntaxe de makefile valide. – immibis

+3

Etes-vous sûr que cela devrait être un Makefile, et non un modèle Makefile autotools? –

+0

@ πάνταῥεῖ, le nom de fichier est Makefile et c'est ce qui est généré par Anjuta, qui est basé sur autotools. Mais je ne suis pas sûr de quoi que ce soit. Ce fichier est produit dans my_project/Debug/my_project et son Makefile appelé. – Igor

Répondre

-1

Dans un makefile, vous avez une syntaxe comme ceci:

all: 
<tab>#yourcode 

L'onglet est important. Ce n'est pas la bonne syntaxe de makefile.

+0

En fait * est * correct La syntaxe Makeile. Un fichier makefile accepte la définition de 'constantes' (ou 'variable') pour rendre le reste des fichiers plus facile à interpréter. Le '@ MAKE_SET @' est probablement faux ici, et je doute qu'Anjuta l'ait créé. Mais il est également incorrect d'éditer le Makefile lui-même. Il sera écrasé car il est généré à partir de Makefile.am – jcoppens