Ich habe ein Makefile im Projektstammverzeichnis. Wenn ich eine Datei in einem Unterverzeichnis bearbeite, wie rufe ich make von EMACS auf? M-x kompilieren make wird nicht funktionieren, da es nach dem Makefile im aktuellen Verzeichnis sucht. Aber ich habe das Makefile im Projektstammverzeichnis.Aufruf von Makefile im Projektstammverzeichnis aus Unterverzeichnis von Emacs
Irgendwelche Gedanken?
bearbeiten
Als vorgeschlagen, make -f fullpath_to_makefile der Trick. Aber ich habe einige Includes in der Makefile wie "Tests/module.mk", die fehlgeschlagen sind. Es sucht nach "Tests" Verzeichnis im Unterverzeichnis. Dies kann durch Angabe eines vollständig qualifizierten Pfads im Makefile gelöst werden. Aber ich denke nicht, dass das eine gute Lösung ist. Irgendwelche besseren Ansätze?
Großartig. Ich habe das zum Laufen gebracht. Hinzugefügt "(setq compile-command" (cd ~/fullpath_to_project_root/&& make && cd -) ")" in die .emacs-Datei. Sieht so aus, als müsste ich vielleicht EDE ausprobieren und projektspezifische Befehle setzen. Aber das ist genug für jetzt. Danke noch einmal. –
Eigentlich bevorzuge ich in jeder Quelldatei den Kompilierbefehl. Auf diese Weise werden sie beim Laden geladen - perfekt in einem Verzeichnis wie ~/cpp/misc/wo ich Boost für Testdateien, Qt für andere usw. brauchen kann. Pp. Aber wenn Sie immer den gleichen Kompilierbefehl benötigen wie die ~/.emacs gilt auch. –