http://panteltje.com/panteltje/satellite/ --> jpvtx
mitä minun pitäisi koneelle asentaa, että saisin tuon käännettyä?
ubuntu 14.04:n gcc ilmoittaa virheitä:
---
jpvtx.c: In function ‘strsave’:
jpvtx.c:78:11: error: conflicting types for ‘malloc’
char *p, *malloc();
^
jpvtx.c:80:1: warning: implicit declaration of function ‘strlen’ [-Wimplicit-function-declaration]
p = malloc( strlen(s) 1);
^
jpvtx.c:80:13: warning: incompatible implicit declaration of built-in function ‘strlen’ [enabled by default]
p = malloc( strlen(s) 1);
^
jpvtx.c:83:1: warning: implicit declaration of function ‘strcpy’ [-Wimplicit-function-declaration]
strcpy(p, s);
^
jpvtx.c:83:1: warning: incompatible implicit declaration of built-in function ‘strcpy’ [enabled by default]
jpvtx.c: In function ‘set_line’:
jpvtx.c:133:2: warning: implicit declaration of function ‘memset’ [-Wimplicit-function-declaration]
memset(mag->pagebuf, ' ', 25 * 40);
^
jpvtx.c:133:2: warning: incompatible implicit declaration of built-in function ‘memset’ [enabled by default]
jpvtx.c:155:3: warning: implicit declaration of function ‘memcpy’ [-Wimplicit-function-declaration]
memcpy(mag->pagebuf 40 * line, data, 40);
^
jpvtx.c:155:3: warning: incompatible implicit declaration of built-in function ‘memcpy’ [enabled by default]
jpvtx.c: In function ‘main’:
jpvtx.c:312:5: warning: implicit declaration of function ‘strcmp’ [-Wimplicit-function-declaration]
if( (b == 2) && (strcmp(temp, "teletext_pid") == 0) )
^
---
mitä minun pitäisi koneelle asentaa, että saisin tuon käännettyä?
ubuntu 14.04:n gcc ilmoittaa virheitä:
---
jpvtx.c: In function ‘strsave’:
jpvtx.c:78:11: error: conflicting types for ‘malloc’
char *p, *malloc();
^
jpvtx.c:80:1: warning: implicit declaration of function ‘strlen’ [-Wimplicit-function-declaration]
p = malloc( strlen(s) 1);
^
jpvtx.c:80:13: warning: incompatible implicit declaration of built-in function ‘strlen’ [enabled by default]
p = malloc( strlen(s) 1);
^
jpvtx.c:83:1: warning: implicit declaration of function ‘strcpy’ [-Wimplicit-function-declaration]
strcpy(p, s);
^
jpvtx.c:83:1: warning: incompatible implicit declaration of built-in function ‘strcpy’ [enabled by default]
jpvtx.c: In function ‘set_line’:
jpvtx.c:133:2: warning: implicit declaration of function ‘memset’ [-Wimplicit-function-declaration]
memset(mag->pagebuf, ' ', 25 * 40);
^
jpvtx.c:133:2: warning: incompatible implicit declaration of built-in function ‘memset’ [enabled by default]
jpvtx.c:155:3: warning: implicit declaration of function ‘memcpy’ [-Wimplicit-function-declaration]
memcpy(mag->pagebuf 40 * line, data, 40);
^
jpvtx.c:155:3: warning: incompatible implicit declaration of built-in function ‘memcpy’ [enabled by default]
jpvtx.c: In function ‘main’:
jpvtx.c:312:5: warning: implicit declaration of function ‘strcmp’ [-Wimplicit-function-declaration]
if( (b == 2) && (strcmp(temp, "teletext_pid") == 0) )
^
---
Vastaukset 3
Vanhimmat
jpvtx.c:78:11: error: conflicting types for ‘malloc’
puutteesta. Jos ohjelma linkittyy virheettä, niin voi toimia vaikka olisi käännöksessä warningeja.
char *p, *malloc();
tuo johtuu siitä että malloc on jo määritelty, joten poista määrittely:
char *p;
Warningit voi johtua include
Ei mitään vaan pitää säätää sitä koodia. debianxfce antoikin hyvän vastauksen.
Kuuluu hyviin käytäntöihin ylläpitää koodia niin, että ei tule yhtään warningia. Vähentää bugeja helposti.
kiitos vastauksista! sain kääntymään.