Member since Feb 2012
3 posts
|
![]()
Subject: SPiC - Aufgabe6 - lstat
Hallo
beim compilieren bekomme ich immer den Fehler "implicit declaration of function lstat". Normalerweise heißt das doch, dass ich die Funktion noch "ausformulieren" soll. Hier will ich aber die Funktion lstat(2) (-> Aufgabenstellung) verwenden. Es sind allerdings alle nötigen Dateien eingebunden, oder? Was mache ich da falsch? Danke im Vorraus flight Hier mal Ausschnitte aus meinem Code: #include <sys/types.h> #include <sys/stat.h> #include <unistd.h> #include <dirent.h> int main(){ DIR *verzeichnis_eintraege; struct dirent *ausgabezeiger; char *dateiname; int stat_result; struct stat *datei_info; verzeichnis_eintraege = opendir("."); if ((ausgabezeiger = readdir(verzeichnis_eintraege))!=NULL){ dateiname = ausgabezeiger -> d_name; stat_result = lstat(dateiname, datei_info); } closedir(verzeichnis_eintraege); } |
Member since May 2011
331 posts
|
![]()
Hmm ja. Da hat sich wohl was in der Bibliothek geändert...
![]() gcc -pedantic -Wall -Werror -std=c99 -D_XOPEN_SOURCE -o printdir printdir.c klappt es. Werd auch gleich nochmal eine Mail rausschicken.
|
Member since Feb 2012
3 posts
|
![]()
Leider tritt die fehlerhafte Compilierung weiterhin auf (zumindest bei mir).
![]() |
Member since May 2011
331 posts
|
![]()
ARG, man sollte es auf allen möglichen Systemen testen. Mit BSD_SOURCE gehts zumindest im CIP......
gcc -pedantic -Wall -Werror -std=c99 -D_BSD_SOURCE -o printdir printdir.c
|
Member since Apr 2012
5 posts
|
![]()
Hey,
ich versuch das printdir.c auf Windows mit "jEdit" zum laufen zu bekommen. Kate gibts ja leider nicht... Habe schon im Internet gesucht, aber nichts brauchbares bzw etwas, das funktioniert, gefunden, um das Programm in der Konsole zu starten. Wie macht man das? Oder soll ich das über Putty auf einem PC in der FAU starten? |
Member since Oct 2010
53 posts
|
![]()
Die Kurzantwort: Unter Windows wirst du das Teil nicht ohne ein paar Verrenkungen zum Laufen bekommen. Klopf dir entweder auf die heimische Kiste ein Linux oder mach das Testen per SSH (PuTTY) in der Uni.
Hier eine etwas ausführlichere (wenngleich plakative) Erklärung. |
Member since May 2011
331 posts
|
![]()
stat müsst aber unter Windoof funktionieren.
|
Member since May 2012
3 posts
|
![]()
Wird die Aufgabe dann mit dem Befehl: "... -D_BSD_SOURCE ..." bewertet, oder nachwievor mit "... -D_POSIX_SOURCE..."?
Weil bei mir compilierts jetzt zumindest mit BSD, aber POSIX spuckt noch einen Fehler aus. Und noch eine warscheinlich blöde Frage: Wenn ichs zum Compilieren gebracht habe, was muss ich eingeben, damit das Programm auch ausgeführt wird? |
Member since May 2011
331 posts
|
![]()
Abgabe: Es wird so übersetzt, dass sowohl stat, als auch lstat verwendet werden kann.
Ausführen: ./printdir |
Powered by the Unclassified NewsBoard software, 20110527-dev,
© 2003-8 by Yves Goergen