Wie füge ich Berechtigungen zu dieser einfachen Make-Datei hinzu?Wie kann ich Berechtigungen in einem grundlegenden Makefile geben
all: shell ls cat groups
shell: shell.o cd.o
gcc shell.o cd.o -o shell
cat: cat.o
gcc -c cat.c -o cat
ls: ls.o header.h
gcc -c ls.c -o ls
groups: groups.o groups.h
gcc -c groups.c -o groups
shell.o: shell.c tlpi_hdr.h
gcc -c shell.c
cd.o: cd.c tlpi_hdr.h
gcc -c cd.c
cat.o: cat.c tlpi_hdr.h
gcc -c cat.c
ls.o: ls.c header.h
gcc -c ls.c
groups.o: groups.c groups.h
gcc -c groups.c
clean:
rm *.o shell cat ls groups
Ich brauche cat/ls/Gruppen/cd innerhalb der Schale laufen, die ich erstellt, kann aber nicht, weil es keine Berechtigungen. Wie kann ich das machen?
Der Compiler macht normalerweise die Programme, die er erzeugt, ausführbar, so dass Sie dies nicht tun müssen. Möglicherweise müssen Sie das Verzeichnis jedoch zu Ihrem 'PATH' hinzufügen. Wie wird deine 'CD' als separate Binärdatei funktionieren? –
Erfahren Sie mehr über 'make' und seine eingebauten Regeln. Versuchen Sie 'make -p'. Siehe [dies] (http://stackoverflow.com/a/16751650/841108) –
Lesen Sie [Erweiterte Linux-Programmierung] (http://advancedlinuxprogramming.com/). Beachten Sie, dass 'cd' kein externes Programm sein kann (es muss eine eingebaute Shell sein). –