deepthroat
Erfahrenes Mitglied
Sorry, ich vergaß das implizite Regeln nicht funktionieren können wenn die Objekt und Quelldateien in verschiedenen Verzeichnissen liegen.Danke für die Hilfe, aber es geht jetzt noch weniger als vorher.
Die Werte die ich für die Variablen angegeben habe waren (teilweise) nur als Beispiel gedacht, damit du weißt was dort stehen kann. Diese 1:1 zu übernehmen kann nicht funktionieren.
Du linkst keine externen Bibliotheken, also ist die LDLIBS Variable bei dir leer.
Du mußt natürlich auch Regeln bzw. Abhängigkeiten für die anderen Ziele angeben.
Code:
# mol executable
$(TARGET): $(OBJECTS)
$(CC) $(LDFLAGS) -o $@ $^ $(LDLIBS)
# main.o
$(OPATH)/main.o: \
./main.c \
./includes/includes.h \
./analysis/analysis.h \
./chemstrings/chemstrings.h \
./regex/regex.h
$(CC) -c $(CFLAGS) -o $@ $<
... # usw.
Code:
solution "Molsketch"
location "./build"
configurations { "Debug", "Release" }
-- A project defines one build target
project "Mol"
kind "ConsoleApp"
language "C"
files { "**.h", "**.c" }
includedirs { "." }
configuration "Debug"
defines { "DEBUG" }
flags { "Symbols" }
configuration "Release"
defines { "NDEBUG" }
flags { "Optimize" }
Gruß
Zuletzt bearbeitet: