Ich habe dieses Bündel von # include-Anweisungen in der Datei:Ist es möglich, einen Pfad für #include zu verwenden?
#include "/Users/cooper/Desktop/MyLib/graph_api.h"
#include "/Users/cooper/Desktop/MyLib/mst.h"
#include "/Users/cooper/Desktop/MyLib/dfs.h"
#include "/Users/cooper/Desktop/MyLib/bfs.h"
#include "/Users/cooper/Desktop/MyLib/topo_sort.h"
#include "/Users/cooper/Desktop/MyLib/scc.h"
#include "/Users/cooper/Desktop/MyLib/bipartite.h"
#include "/Users/cooper/Desktop/MyLib/dijkstra.h"
#include "/Users/cooper/Desktop/MyLib/union_find.h"
#include "/Users/cooper/Desktop/MyLib/my_string.h"
#include "/Users/cooper/Desktop/MyLib/2d_array.h"
Es könnte allerdings ändern, in der Zukunft, und ich werde eine Reihe von Zeilen zu aktualisieren. Ist es möglich, etwas wie
PATH = "/Users/cooper/Desktop/MyLib/
#include PATH + "2d_array.h"
zu haben?
Es ist nicht ein Teil des Makefile per se. Es ist eine Befehlszeilenoption. Makefile ist nur ein Mechanismus, um das Kompilieren zu verwalten. –
Es sieht so aus, als ob Sie auf einem OSX-System arbeiten (nach den Pfaden), was bedeutet, dass Sie wahrscheinlich Xcode verwenden. In den Projekteinstellungen muss ein Platz vorhanden sein, an dem Sie Präprozessor-Einstellungen eingeben können, z. B. das Hinzufügen von Include-Pfaden. Wenn Sie das tun und '/ Users/cooper/Desktop/MyLib' hinzufügen, können Sie einfach' #include <2d_array.h> '. –
[diese Antwort] (http://stackoverflow.com/questions/4743822/generate-include-file-name-in-a-macro) sollte für Sie nützlich sein. (Ich meine mit '#define PATH"/Benutzer/cooper/Desktop/MyLib/'und' # include PATH "2d_array.h" ') – mvidelgauz