compilerfehler
-
Hallo,
ich habe ein kleines Linux Programm, welche sich auf einem Debian Sage problemlos compilieren ließ. Auf dem neuen Server streikt der Compiler, mit div. warnungs und einem Error.
Im speziellen handelt es sich um einen Signalhandler, welcher nach einem Timeout das Programm automatisch beenden soll.
Folgender Code (nur auszugsweise):#include <signal.h> /* Signalhandler fuer Timeout setzen */ void signalhandler(int); signal (SIGALRM, signalhandler); void signalhandler() { printf("Timeout: Plugin timed out while executing system call\n"); exit(UNKNOWN); }
Folgende Meldungen vom Compiler:
check_snmp_cpu.c: In function 'main': check_snmp_cpu.c:54: warning: pointer targets in passing argument 2 of 'walkoid' differ in signedness check_snmp_cpu.c: In function 'signalhandler': check_snmp_cpu.c:130: error: number of arguments doesn't match prototype check_snmp_cpu.c:48: error: prototype declaration make: *** [check_snmp_cpu] Error 1
Alle Abhängigkeiten und Headerfiles sind installiert, ich weiß mir einfach kein Rat mehr
thx vicodas
-
vicodas schrieb:
Alle Abhängigkeiten und Headerfiles sind installiert, ich weiß mir einfach kein Rat mehr
Lies doch mal die Fehlermeldung.
-
und die bedeutet?
Bin leider nicht der große Programmierer...
-
check_snmp_cpu.c:130: error: number of arguments doesn't match prototype
check_snmp_cpu.c:48: error: prototype declarationDie Anzahl der Argumente, die du in Zeile 130 benutzt, passt nicht zum Prototypen in Zeile 48. Was gibt es daran nicht zu verstehen?
Der Prototyp hat einen int-Parameter, der aber bei der Funktionsdefinition selbst fehlt.
void signalhandler(int) void signalhandler()
Siehst du den Unterschied nicht?
-
Jo, jetzt sehe ich es auch,
Danke für die schnelle Hilfe,
thx vicodas