problemi con gcc

Se avete problemi con l'installazione e la configurazione di Slackware postate qui. Non usate questo forum per argomenti generali... per quelli usate Gnu/Linux in genere.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Slackware, se l'argomento è generale usate il forum Gnu/Linux in genere.
3) Leggere attentamente le risposte ricevute.
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
xbug
Linux 0.x
Linux 0.x
Messaggi: 20
Iscritto il: ven 6 gen 2006, 23:36

problemi con gcc

Messaggio da xbug »

ciao a tutti. Ho qualche problema con gcc.
Compilando un qualsiasi programma mi da errori che non comprendo. Ad esempio, compilando il classico programma ciao mondo mi seganala gli errori che seguono: che fare?

Codice: Seleziona tutto

In file included from /usr/include/c++/3.3.6/i486-slackware-linux/bits/c++config.h:35,
                 from /usr/include/c++/3.3.6/iostream:44,
                 from prova.cpp:1:
/usr/include/c++/3.3.6/i486-slackware-linux/bits/os_defines.h:39:22: features.h: No such file or directory
/usr/include/c++/3.3.6/i486-slackware-linux/bits/os_defines.h:46:23: gnu/types.h: No such file or directory
In file included from /usr/include/c++/3.3.6/i486-slackware-linux/bits/c++config.h:35,
                 from /usr/include/c++/3.3.6/iostream:44,
                 from prova.cpp:1:
/usr/include/c++/3.3.6/i486-slackware-linux/bits/os_defines.h:47: error: syntax 
   error before `;' token
In file included from /usr/include/c++/3.3.6/i486-slackware-linux/bits/c++locale.h:41,
                 from /usr/include/c++/3.3.6/iosfwd:46,
                 from /usr/include/c++/3.3.6/ios:44,
                 from /usr/include/c++/3.3.6/ostream:45,
                 from /usr/include/c++/3.3.6/iostream:45,
                 from prova.cpp:1:
/usr/include/c++/3.3.6/clocale:49:20: locale.h: No such file or directory
In file included from /usr/include/c++/3.3.6/i486-slackware-linux/bits/c++locale.h:41,
                 from /usr/include/c++/3.3.6/iosfwd:46,
                 from /usr/include/c++/3.3.6/ios:44,
                 from /usr/include/c++/3.3.6/ostream:45,
                 from /usr/include/c++/3.3.6/iostream:45,
                 from prova.cpp:1:
/usr/include/c++/3.3.6/clocale:57: error: `lconv' not declared
/usr/include/c++/3.3.6/clocale:58: error: `setlocale' not declared
/usr/include/c++/3.3.6/clocale:59: error: `localeconv' not declared
In file included from /usr/include/c++/3.3.6/iosfwd:46,
                 from /usr/include/c++/3.3.6/ios:44,
                 from /usr/include/c++/3.3.6/ostream:45,
                 from /usr/include/c++/3.3.6/iostream:45,
                 from prova.cpp:1:
/usr/include/c++/3.3.6/i486-slackware-linux/bits/c++locale.h:42:47: langinfo.h: No such file or directory
/usr/include/c++/3.3.6/i486-slackware-linux/bits/c++locale.h:43:68: iconv.h: No such file or directory
/usr/include/c++/3.3.6/i486-slackware-linux/bits/c++locale.h:44:48: libintl.h: No such file or directory
In file included from /usr/include/c++/3.3.6/iosfwd:46,
                 from /usr/include/c++/3.3.6/ios:44,
                 from /usr/include/c++/3.3.6/ostream:45,
                 from /usr/include/c++/3.3.6/iostream:45,
                 from prova.cpp:1:
/usr/include/c++/3.3.6/i486-slackware-linux/bits/c++locale.h:59: error: syntax 
   error before `;' token
/usr/include/c++/3.3.6/i486-slackware-linux/bits/c++locale.h:73: error: syntax 
   error before `&' token
In file included from /usr/include/c++/3.3.6/iosfwd:47,
                 from /usr/include/c++/3.3.6/ios:44,
                 from /usr/include/c++/3.3.6/ostream:45,
                 from /usr/include/c++/3.3.6/iostream:45,
                 from prova.cpp:1:
/usr/include/c++/3.3.6/cctype:49:19: ctype.h: No such file or directory
In file included from /usr/include/c++/3.3.6/iosfwd:47,
                 from /usr/include/c++/3.3.6/ios:44,
                 from /usr/include/c++/3.3.6/ostream:45,
                 from /usr/include/c++/3.3.6/iostream:45,
                 from prova.cpp:1:
/usr/include/c++/3.3.6/cctype:68: error: `isalnum' not declared
/usr/include/c++/3.3.6/cctype:69: error: `isalpha' not declared
/usr/include/c++/3.3.6/cctype:70: error: `iscntrl' not declared
/usr/include/c++/3.3.6/cctype:71: error: `isdigit' not declared
/usr/include/c++/3.3.6/cctype:72: error: `isgraph' not declared
/usr/include/c++/3.3.6/cctype:73: error: `islower' not declared
/usr/include/c++/3.3.6/cctype:74: error: `isprint' not declared
/usr/include/c++/3.3.6/cctype:75: error: `ispunct' not declared
/usr/include/c++/3.3.6/cctype:76: error: `isspace' not declared
/usr/include/c++/3.3.6/cctype:77: error: `isupper' not declared
/usr/include/c++/3.3.6/cctype:78: error: `isxdigit' not declared
/usr/include/c++/3.3.6/cctype:79: error: `tolower' not declared
/usr/include/c++/3.3.6/cctype:80: error: `toupper' not declared
In file included from /usr/include/c++/3.3.6/i486-slackware-linux/bits/c++io.h:35,
                 from /usr/include/c++/3.3.6/bits/fpos.h:44,
                 from /usr/include/c++/3.3.6/iosfwd:49,
                 from /usr/include/c++/3.3.6/ios:44,
                 from /usr/include/c++/3.3.6/ostream:45,
                 from /usr/include/c++/3.3.6/iostream:45,
                 from prova.cpp:1:
/usr/include/c++/3.3.6/cstdio:52:19: stdio.h: No such file or directory
In file included from /usr/include/c++/3.3.6/i486-slackware-linux/bits/c++io.h:35,
                 from /usr/include/c++/3.3.6/bits/fpos.h:44,
                 from /usr/include/c++/3.3.6/iosfwd:49,
                 from /usr/include/c++/3.3.6/ios:44,
                 from /usr/include/c++/3.3.6/ostream:45,
                 from /usr/include/c++/3.3.6/iostream:45,
                 from prova.cpp:1:
/usr/include/c++/3.3.6/cstdio:99: error: `FILE' not declared
/usr/include/c++/3.3.6/cstdio:100: error: `fpos_t' not declared
/usr/include/c++/3.3.6/cstdio:102: error: `clearerr' not declared
/usr/include/c++/3.3.6/cstdio:103: error: `fclose' not declared
/usr/include/c++/3.3.6/cstdio:104: error: `feof' not declared
/usr/include/c++/3.3.6/cstdio:105: error: `ferror' not declared
/usr/include/c++/3.3.6/cstdio:106: error: `fflush' not declared
/usr/include/c++/3.3.6/cstdio:107: error: `fgetc' not declared
/usr/include/c++/3.3.6/cstdio:108: error: `fgetpos' not declared
/usr/include/c++/3.3.6/cstdio:109: error: `fgets' not declared
/usr/include/c++/3.3.6/cstdio:110: error: `fopen' not declared
/usr/include/c++/3.3.6/cstdio:111: error: `fprintf' not declared
/usr/include/c++/3.3.6/cstdio:112: error: `fputc' not declared
/usr/include/c++/3.3.6/cstdio:113: error: `fputs' not declared
/usr/include/c++/3.3.6/cstdio:114: error: `fread' not declared
/usr/include/c++/3.3.6/cstdio:115: error: `freopen' not declared
/usr/include/c++/3.3.6/cstdio:116: error: `fscanf' not declared
/usr/include/c++/3.3.6/cstdio:117: error: `fseek' not declared
/usr/include/c++/3.3.6/cstdio:118: error: `fsetpos' not declared
/usr/include/c++/3.3.6/cstdio:119: error: `ftell' not declared
/usr/include/c++/3.3.6/cstdio:120: error: `fwrite' not declared
/usr/include/c++/3.3.6/cstdio:121: error: `getc' not declared
/usr/include/c++/3.3.6/cstdio:122: error: `getchar' not declared
/usr/include/c++/3.3.6/cstdio:123: error: `gets' not declared
/usr/include/c++/3.3.6/cstdio:124: error: `perror' not declared
/usr/include/c++/3.3.6/cstdio:125: error: `printf' not declared
/usr/include/c++/3.3.6/cstdio:126: error: `putc' not declared
/usr/include/c++/3.3.6/cstdio:127: error: `putchar' not declared
/usr/include/c++/3.3.6/cstdio:128: error: `puts' not declared
/usr/include/c++/3.3.6/cstdio:129: error: `remove' not declared
/usr/include/c++/3.3.6/cstdio:130: error: `rename' not declared
/usr/include/c++/3.3.6/cstdio:131: error: `rewind' not declared
/usr/include/c++/3.3.6/cstdio:132: error: `scanf' not declared
/usr/include/c++/3.3.6/cstdio:133: error: `setbuf' not declared
/usr/include/c++/3.3.6/cstdio:134: error: `setvbuf' not declared
/usr/include/c++/3.3.6/cstdio:135: error: `sprintf' not declared
/usr/include/c++/3.3.6/cstdio:136: error: `sscanf' not declared
/usr/include/c++/3.3.6/cstdio:137: error: `tmpfile' not declared
/usr/include/c++/3.3.6/cstdio:138: error: `tmpnam' not declared
/usr/include/c++/3.3.6/cstdio:139: error: `ungetc' not declared
/usr/include/c++/3.3.6/cstdio:140: error: `vfprintf' not declared
/usr/include/c++/3.3.6/cstdio:141: error: `vprintf' not declared
/usr/include/c++/3.3.6/cstdio:142: error: `vsprintf' not declared
/usr/include/c++/3.3.6/cstdio:167: error: `snprintf' not declared
/usr/include/c++/3.3.6/cstdio:168: error: `vfscanf' not declared
/usr/include/c++/3.3.6/cstdio:169: error: `vscanf' not declared
/usr/include/c++/3.3.6/cstdio:170: error: `vsnprintf' not declared
/usr/include/c++/3.3.6/cstdio:171: error: `vsscanf' not declared
/usr/include/c++/3.3.6/cstdio:177: error: `snprintf' not declared
/usr/include/c++/3.3.6/cstdio:178: error: `vfscanf' not declared
/usr/include/c++/3.3.6/cstdio:179: error: `vscanf' not declared
/usr/include/c++/3.3.6/cstdio:180: error: `vsnprintf' not declared
/usr/include/c++/3.3.6/cstdio:181: error: `vsscanf' not declared
In file included from /usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr.h:98,
                 from /usr/include/c++/3.3.6/i486-slackware-linux/bits/c++io.h:37,
                 from /usr/include/c++/3.3.6/bits/fpos.h:44,
                 from /usr/include/c++/3.3.6/iosfwd:49,
                 from /usr/include/c++/3.3.6/ios:44,
                 from /usr/include/c++/3.3.6/ostream:45,
                 from /usr/include/c++/3.3.6/iostream:45,
                 from prova.cpp:1:
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:37:21: pthread.h: No such file or directory
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:38:20: unistd.h: No such file or directory
In file included from /usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr.h:98,
                 from /usr/include/c++/3.3.6/i486-slackware-linux/bits/c++io.h:37,
                 from /usr/include/c++/3.3.6/bits/fpos.h:44,
                 from /usr/include/c++/3.3.6/iosfwd:49,
                 from /usr/include/c++/3.3.6/ios:44,
                 from /usr/include/c++/3.3.6/ostream:45,
                 from /usr/include/c++/3.3.6/iostream:45,
                 from prova.cpp:1:
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:40: error: syntax
   error before `;' token
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:41: error: syntax
   error before `;' token
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:42: error: syntax
   error before `;' token
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h: In function `
   int __gthread_active_p()':
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:90: error: `
   pthread_create' undeclared (first use this function)
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:90: error: (Each
   undeclared identifier is reported only once for each function it appears 
   in.)
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h: At global 
   scope:
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:450: error: `
   __gthread_once_t' was not declared in this scope
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:450: error: `
   once' was not declared in this scope
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:450: error: `
   func' was not declared in this scope
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:450: error: syntax
   error before `)' token
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:450: error: `
   __gthread_once' declared as an `inline' variable
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:450: error: initializer
   list being treated as compound expression
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:450: error: syntax
   error before `)' token
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:459: error: `
   __gthread_key_t' was not declared in this scope
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:459: error: `
   key' was not declared in this scope
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:459: error: `
   dtor' was not declared in this scope
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:459: error: syntax
   error before `*' token
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h: In function `
   int __gthread_key_create(...)':
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:465: error: `
   __gthread_key_t' undeclared (first use this function)
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:465: error: syntax
   error before `,' token
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:466: error: cannot
   declare static function inside another function
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h: In function `
   int __gthread_key_dtor(...)':
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:468: error: `
   ptr' undeclared (first use this function)
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:469: error: `
   key' undeclared (first use this function)
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:469: error: `
   pthread_setspecific' undeclared (first use this function)
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:475: error: syntax
   error before `)' token
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:476: error: cannot
   declare static function inside another function
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h: In function `
   int __gthread_key_delete(...)':
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:477: error: `
   pthread_key_delete' undeclared (first use this function)
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:481: error: syntax
   error before `)' token
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:482: error: cannot
   declare static function inside another function
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h: In function `
   void* __gthread_getspecific(...)':
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:483: error: `
   pthread_getspecific' undeclared (first use this function)
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:487: error: syntax
   error before `,' token
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:488: error: cannot
   declare static function inside another function
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h: In function `
   int __gthread_setspecific(...)':
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:489: error: `
   pthread_setspecific' undeclared (first use this function)
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:493: error: `
   __gthread_mutex_t' undeclared (first use this function)
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:493: error: `
   mutex' undeclared (first use this function)
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:494: error: `
   __gthread_mutex_lock' declared as an `inline' variable
/usr/include/c++/3.3.6/i486-slackware-linux/bits/gthr-default.h:494: confused by earlier errors, bailing out

Simone_R
Linux 2.x
Linux 2.x
Messaggi: 218
Iscritto il: mar 12 apr 2005, 0:00
Contatta:

Re: problemi con gcc

Messaggio da Simone_R »

Posta anche il prova.c
e il comando di compilazione.

xbug
Linux 0.x
Linux 0.x
Messaggi: 20
Iscritto il: ven 6 gen 2006, 23:36

Messaggio da xbug »

Codice: Seleziona tutto

#include <iostream> 
int main()
{
   cout << "Ciao mondo crudele";
   return 0;
}
Uso il comando
gcc prova.cpp

Avatar utente
Karma
Linux 2.x
Linux 2.x
Messaggi: 285
Iscritto il: mar 30 ago 2005, 0:00
Slackware: 12.0
Kernel: 2.6.23.1
Desktop: KDE 3.5
Località: Trento

Messaggio da Karma »

Semplicemente usa g++ invece di gcc...
gcc nasce come compilatore per c, non riconoscerebbe quindi il c++, puoi farlo lo stesso ma dovresti, a quanto ho capito, creare l'eseguibile in due fasi...
Per maggiori informazioni leggi qui:

http://www.badpenguin.org/press/infomed ... ilare.html

Comunque la scelta più sensata, secondo me, è usare g++! Lo uso da sempre e non ho mai avuto di questi problemi!

Ciao e buon lavoro!

xbug
Linux 0.x
Linux 0.x
Messaggi: 20
Iscritto il: ven 6 gen 2006, 23:36

Messaggio da xbug »

ho usato g++ ma da lo stesso errore....
:shock:
Che fare?
Ho anche provato a disinstallare tutto il gcc e reinstallarlo con swaret ma non funziona lo stesso.

Tristezza e depressione....

Ho anche provato a creare il file ciao.c così

Codice: Seleziona tutto

int main()
{
   ;
   return 0;
}
e a compilarlo con cc ma mi segala

Codice: Seleziona tutto

/usr/lib/gcc-lib/i486-slackware-linux/3.3.6/../../../../i486-slackware-linux/bin/ld: crt1.o: No such file: No such file or directory
collect2: ld returned 1 exit status
Stesso errore se lo faccio con gcc o g++

[/code]

fulmine
Linux 0.x
Linux 0.x
Messaggi: 36
Iscritto il: ven 24 feb 2006, 11:17
Località: Ancona

Messaggio da fulmine »

Hai installato tutte le librerie necessarie per la compilazione?

xbug
Linux 0.x
Linux 0.x
Messaggi: 20
Iscritto il: ven 6 gen 2006, 23:36

Messaggio da xbug »

non saprei, come faccio a verificarlo? Swaret ha controllato le dipendenze e non ha riscontrato errori...

Avatar utente
Karma
Linux 2.x
Linux 2.x
Messaggi: 285
Iscritto il: mar 30 ago 2005, 0:00
Slackware: 12.0
Kernel: 2.6.23.1
Desktop: KDE 3.5
Località: Trento

Messaggio da Karma »

posso provare dicendoti quello che ho installato io...
# ls /var/log/packages | grep "gcc"
mi dà come risultato:
gcc-3.3.6-i486-1
gcc-g++-3.3.6-i486-1
gcc-g77-3.3.6-i486-1
gcc-java-3.3.6-i486-1
gcc-objc-3.3.6-i486-1
e invece
# ls /var/log/packages | grep "glib"
mi dà come risultato:
glib-1.2.10-i386-2
glib2-2.6.6-i486-1
glibc-2.3.5-i486-5
glibc-i18n-2.3.5-noarch-5
glibc-solibs-2.3.5-i486-5
glibc-zoneinfo-2.3.5-noarch-5
prova a vedere se li hai installati anche tu...

fulmine
Linux 0.x
Linux 0.x
Messaggi: 36
Iscritto il: ven 24 feb 2006, 11:17
Località: Ancona

Messaggio da fulmine »

Ok, stasera proverò perchè ora non sono a casa...

xbug
Linux 0.x
Linux 0.x
Messaggi: 20
Iscritto il: ven 6 gen 2006, 23:36

Messaggio da xbug »

Risolto. Una volta installate le librerie che mi hai indicato tutto a preso a funzionare correttamente.
Grazie.

Avatar utente
Karma
Linux 2.x
Linux 2.x
Messaggi: 285
Iscritto il: mar 30 ago 2005, 0:00
Slackware: 12.0
Kernel: 2.6.23.1
Desktop: KDE 3.5
Località: Trento

Messaggio da Karma »

Perfetto!
Contento di averti aiutato!
Ora allora buon lavoro e a presto!

Rispondi