Eingeweidemann
Mitglied
Hallo Tutorials Coder!
Da ich gerade an einem halbwegs ernstem Projekt Code, will ich das auch dann in guter UNIX Manier im Sourcecode ausliefern und die User sollen es selbst über make; make install; bauen und installieren. Da ich aber Xcode zum complieren benutze, habe ich kein makefile und Export oder convertierug ist wohl auch sehr blöd, und da ich nicht sehr viele Module habe, kann ich es auch schnell selbst hinschreiben. Dachte ich.
Immer wenn ich mein makefile aus dem Projekt Verzeichnis aufrufe, fängt er an, das erste Objekt main.o zu bauen und gleich beim ersten sourcefile main.c sagt er make: ./main.c: Permission denied; make: *** [build/gcc/objects/main.o] Error 1. Ich hab's probehalber auch mit sudo make probiert ebenso mit chmod makefile 777 aber es hat alles nichts gebracht. Der Installationsbefehl make install (einfach nur ein cp in ein anderes Verzeichnis) funktioniert einwandfrei.
Mein Compiler und Linker ist gcc, ich Benutzer
GNU make mit der Bourne Again Shell von Mac OS
Mein Makefile liegt hier: http://pastie.org/1835116
Mein Projektverzeichnis sieht so aus:http://pastie.org/1835163
Der genaue Error Output: http://pastie.org/1835389
Vielen Dank schonmal im Vorraus, Eingeweidemann
Da ich gerade an einem halbwegs ernstem Projekt Code, will ich das auch dann in guter UNIX Manier im Sourcecode ausliefern und die User sollen es selbst über make; make install; bauen und installieren. Da ich aber Xcode zum complieren benutze, habe ich kein makefile und Export oder convertierug ist wohl auch sehr blöd, und da ich nicht sehr viele Module habe, kann ich es auch schnell selbst hinschreiben. Dachte ich.
Immer wenn ich mein makefile aus dem Projekt Verzeichnis aufrufe, fängt er an, das erste Objekt main.o zu bauen und gleich beim ersten sourcefile main.c sagt er make: ./main.c: Permission denied; make: *** [build/gcc/objects/main.o] Error 1. Ich hab's probehalber auch mit sudo make probiert ebenso mit chmod makefile 777 aber es hat alles nichts gebracht. Der Installationsbefehl make install (einfach nur ein cp in ein anderes Verzeichnis) funktioniert einwandfrei.
Mein Compiler und Linker ist gcc, ich Benutzer
GNU make mit der Bourne Again Shell von Mac OS
Mein Makefile liegt hier: http://pastie.org/1835116
Code:
#
# Macros
#
CC = gcc
LNK = gcc
INCLUDE = /usr/local/inlcude
LIBPATH = /usr/local/lib
TARGET = mol
TPATH = ./build/gcc
OPATH = ./build/gcc/objects
BINPATH = /usr/bin
CFLAGS = -O -Wall -Wno-switch -Wno-unknown-pragmas -c
CDEFS =
OBJECTS = \
$(OPATH)/main.o \
$(OPATH)/regex.o \
$(OPATH)/analysis.o
#
# Targets
#
$(TPATH)/$(TARGET): $(OBJECTS)
$(LNK) $(LIBPATH) -o $(TPATH)/$(TARGET) $(OBJECTS)
$(OPATH)/main.o:
./main.c \
./includes/includes.h \
./analysis/analysis.h \
./chemstrings/chemstrings.h \
./regex/regex.h
$(CC) $(INCLUDE) $(CFLAGS) $(CDEFS) -o $@ $<
$(OPATH)/regex.o:
./regex/regex.c \
./includes/includes.h \
./analysis/analysis.h \
./chemstrings/chemstrings.h \
./regex/regex.h
$(OPATH)/analysis.o:
./analysis/analysis.c \
./includes/includes.h \
./analysis/analysis.h \
./chemstrings/chemstrings.h \
./regex/regex.h
install:
@cp $(TPATH)/$(TARGET) $(BINPATH)/$(TARGET) && echo "\"$(TARGET)\" successfully installed in \"$(BINPATH)\""
Code:
molsketch/
analysis/
analysis.c
analysis.h
build/
gcc/
objects/
chemstrings/
chemstrings.h
includes/
includes.h
regex/
regex.c
regex.h
main.c
makefile
Code:
noname:MolSketch Ps0ke$ make
./main.c \
./includes/includes.h \
./analysis/analysis.h \
./chemstrings/chemstrings.h \
./regex/regex.h
make: ./main.c: Permission denied
make: *** [build/gcc/objects/main.o] Error 1
Vielen Dank schonmal im Vorraus, Eingeweidemann
Zuletzt bearbeitet: