Problemi con l'installazione di Eric6 - dipendenze non soddisfatte

5 risposte [Ultimo contenuto]
Ritratto di Francesco83
Francesco83
(Junior)
Offline
Junior
Iscritto: 20/04/2013
Messaggi: 43

Buongiorno e felice anno nuovo a tutti.
Sto cercando di installare la nuova versione di Eric6. Ovviamente non è disponibile nei repo ufficiali di debian pertanto ho scaricato i file sorgente da compilare dal sito del progetto. Come buona norma prima di procedere alla compilazione dei file ho letto il file "readme" per vedere di che dipendenze ha bisogno il software. Le ho soddisfatte tutte tranne quella di Sip che richiede la versione 4.14 o superiore. Ho scaricato quindi il pacchetto sorgente dal sito riverbank. Seguendo le istruzioni di compilazione ho lanciato lo script di configurazione con python configure.py tutto ok e nessun messaggio di errore. Proseguo quindi con lanciare il comando make e qui giunge l'errore:

make[1]: Entering directory `/home/francesco/Scaricati/sip-4.16.5/sipgen'
gcc -c -pipe -O2 -w -DNDEBUG -I. -o main.o main.c
gcc -c -pipe -O2 -w -DNDEBUG -I. -o transform.o transform.c
gcc -c -pipe -O2 -w -DNDEBUG -I. -o gencode.o gencode.c
gcc -c -pipe -O2 -w -DNDEBUG -I. -o extracts.o extracts.c
gcc -c -pipe -O2 -w -DNDEBUG -I. -o export.o export.c
gcc -c -pipe -O2 -w -DNDEBUG -I. -o heap.o heap.c
gcc -c -pipe -O2 -w -DNDEBUG -I. -o parser.o parser.c
gcc -c -pipe -O2 -w -DNDEBUG -I. -o lexer.o lexer.c
g++  -o sip main.o transform.o gencode.o extracts.o export.o heap.o parser.o lexer.o 
make[1]: Leaving directory `/home/francesco/Scaricati/sip-4.16.5/sipgen'
make[1]: Entering directory `/home/francesco/Scaricati/sip-4.16.5/siplib'
gcc -c -pipe -fPIC -O2 -w -DNDEBUG -I. -I/usr/include/python2.7 -o siplib.o siplib.c
siplib.c:20:20: fatal error: Python.h: File o directory non esistente
compilation terminated.
make[1]: *** [siplib.o] Error 1
make[1]: Leaving directory `/home/francesco/Scaricati/sip-4.16.5/siplib'
make: *** [all] Error 2

sono andato a vedere dentro la directory /usr/include/python2.7 ed effettivamente nè il file 'siplib.o' nè il file 'siplib.c' sono presenti, ma non lo sono nemmeno all'interno della cartella estratta dal pacchetto originale.
Qualcuno mi sa dare qualche consiglio? E' possibile un errore nello script di configurazione?
Grazie mille!

Ciao

--
Francesco

Non possiamo pretendere che le cose cambino, se continuiamo a fare le stesse cose.
È nella crisi che sorge l'inventiva, le scoperte e le grandi strategie.
È nella crisi che emerge il meglio di ognuno, perché senza crisi tutti i venti sono solo lievi brezze. ---> cit. A. Einstein

Ritratto di mcortese
mcortese
(Moderatore)
Offline
Moderatore
Iscritto: 27/02/2009
Messaggi: 2918

Il file siplib.o è ovvio che non ci sia: è l'output della compilazione, ma visto che questa fallisce non lo scrive.

Il file siplib.c dovrebbe essere nella directory /home/francesco/Scaricati/sip-4.16.5/siplib e se non ci fosse l'errore sarebbe ben diverso.

Il parametro -I dice in quale directory andare a cercare i file header (estensione .h). In questo caso vanno cercati prima nella directory corrente (.) e poi in /usr/include/python2.7.

Il vero errore è che sipib.c fa riferimento a un header chiamato Python.h. Poiché questo non è sicuramente in /usr/include/python2.7 dovrà essere nella directory corrente, cioè /home/francesco/Scaricati/sip-4.16.5/siplib: se non c'è direi che è un errore dell'autore che non l'ha messo o della procedura di configurazione che non l'ha creato. Controlla che non ci sia sotto un'altra directory, che abbia un nome leggermente diverso, ecc.

Ritratto di Francesco83
Francesco83
(Junior)
Offline
Junior
Iscritto: 20/04/2013
Messaggi: 43

Ti ringrazio per i chiarimenti. Ho controllato in tutte le cartelle dove ho estratto il pacchetto Sip ma non esiste alcun header dal nome Python.h; gli unici file che si avvicinano come nome sono: python_api.rst e sip.h parser.h
A questo punto è davvero ipotizzabile un errore dell'autore dello script....
A questo punto vorrei chiederti se sai dove potrei trovare un pacchetto SIP aggiornato almeno alla versione 4.14 già compilato e con tutte le dipendenze a posto.
Grazie nuovamente.

Francesco

Non possiamo pretendere che le cose cambino, se continuiamo a fare le stesse cose.
È nella crisi che sorge l'inventiva, le scoperte e le grandi strategie.
È nella crisi che emerge il meglio di ognuno, perché senza crisi tutti i venti sono solo lievi brezze. ---> cit. A. Einstein

Ritratto di mcortese
mcortese
(Moderatore)
Offline
Moderatore
Iscritto: 27/02/2009
Messaggi: 2918

Un momento! Ma tu hai installato solo python2.7 o anche python2.7-dev? È quest'ultimo che fornisce il file Python.h che ti manca.

Ritratto di Francesco83
Francesco83
(Junior)
Offline
Junior
Iscritto: 20/04/2013
Messaggi: 43

Bravissimo! Applause
Grazie. Mancava proprio quel pacchetto, scusa ma credevo che i pacchetti *-dev fossero dedicati esclusivamente agli sviluppatori.
Grazie al tuo consiglio sono riuscito ad andare avanti. Ancora grazie! Big Grin
Ciao

Francesco

Non possiamo pretendere che le cose cambino, se continuiamo a fare le stesse cose.
È nella crisi che sorge l'inventiva, le scoperte e le grandi strategie.
È nella crisi che emerge il meglio di ognuno, perché senza crisi tutti i venti sono solo lievi brezze. ---> cit. A. Einstein

Ritratto di mcortese
mcortese
(Moderatore)
Offline
Moderatore
Iscritto: 27/02/2009
Messaggi: 2918

Francesco83 ha scritto:

credevo che i pacchetti *-dev fossero dedicati esclusivamente agli sviluppatori.

Esatto. Infatti tu ne avevi bisogno per compilare una libreria: appartieni alla categoria degli sviluppatori, non degli utenti (cioè chi usa i binari pre-compilati).