2009-09-22 2 views
10

Sto cercando di installare pysqlite e avere problemi con quello. Ho scoperto che il motivo più probabile è che mancano gli header sqlite e devo installarli.Che cosa sono le intestazioni di sviluppo sqlite e come installarle?

Tuttavia, non ho idea di cosa siano queste intestazioni (dove posso trovarle, cosa stanno facendo e come installarle).

Qualcuno può, aiutarmi, aiutarmi?

+0

Si può dire quale versione di Python che si ha e quale piattaforma si è in? – quamrana

+0

Giusto, non possiamo ottenere molto di più senza conoscere le specifiche della piattaforma, inclusi OS e CLI. (Linux e quale distro linux specifico? Windows, ma quale CLI?) – DigitalRoss

+0

La mia piattaforma: CentOS versione 5.3 (Finale). – Verrtex

risposta

0

pysqlite deve compilare/compilare prima di poterlo utilizzare. Ciò richiede i file di intestazione del linguaggio C (* .H) forniti con il codice sorgente di sqllite stesso.

ad esempio sqllite e pysqlite sono due cose diverse. Hai installato sqlite prima di provare e compilare pysqllte? (O forse l'avete fatto, ma hai fatto così solo con i binari, è necessario il pacchetto sorgente (o almeno la sua header) per scopi pysqlite

18

Debian/Ubuntu:.

$ apt-get install libsqlite3-dev # or rpm -i sqlite-devel-something.rpm 

Penso che un certo numero di interpreti ricompili le loro piccole librerie di connessioni durante l'installazione, ma per farlo hanno bisogno dei file C .h oltre alla libreria a cui collegarsi. Potresti già avere la libreria, perché da essa dipendeva qualcos'altro, ma non hai necessariamente il pacchetto dev, che è a metà strada tra sorgente e binario

Parte di esso è semplice, se hai intenzione di sviluppare con una libreria hai bisogno delle sue intestazioni dell'interfaccia.

Ma penso che più è accaduto qualcosa, in un primo momento, la gente ha cercato tutte le fonti e le distribuzioni binarie tutto, ma quelli all-binari erano vulnerabili a inferno delle dipendenze, e quelli tutto-source erano eccessivo. Ora penso che sia in uso un compromesso interessante, una distribuzione semi-sorgente in cui un programma si collega alle librerie installate ricompilando quelle parti che collegano alle librerie di estensioni. Questo ha molto senso con gli interpreti in cui la maggior parte del sistema può arrivare in binario, ma i moduli di estensione vengono caricati e compilati dinamicamente per il sistema installato. Credo.

+0

Ottengo: apt-get: comando non trovato – Verrtex

+0

Che piattaforma sei? E quale CLI? – DigitalRoss

+0

La mia piattaforma: CentOS versione 5.3 (Finale). Ho Python-2.6.2 – Verrtex

7

Per me questo ha funzionato (Redhat/CentOS):

$ sudo yum install sqlite-devel