Question

J'essaie de modifier tous les fichiers d'en-tête avec q_Object macro à l'aide de make.Voici ce que j'ai en ce moment.

HEADERS = *.h
MOCS := $(shell grep -l Q_OBJECT $(HEADERS))    
MOC_SOURCES := $(MOCS:%.h=moc_%.cpp)
$(MOC_SOURCES) : moc_%.cpp: %.h
    @echo "Building Moc: $@ from $<"
    /opt/Qt5.1.1/5.1.1/gcc/bin/moc $< -o $@

Mais j'ai un problème dans cette solution.Seul premier fichier est MOC'ing.

merci.

Était-ce utile?

La solution

Si la première règle du fabricant contient plusieurs cibles, seule la première cible de la règle devient l'objectif par défaut, et non la liste entière.

Par conséquent, je pense que vous devez définir une cible "toutes" ci-dessus dépend du $ (moc_sources).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top