Domanda

Ho un progetto open source che contiene sia Python e il codice C. Mi chiedo che non v'è alcun uso per Distutils per me, perché ho intenzione di fare un pacchetto ubuntu / debian. Il codice C non è qualcosa che avrei potuto o vogliono utilizzare come estensione Python. programmi in C e Python comunicano con il protocollo TCP / IP tramite localhost.

Così la linea di fondo è che, mentre sto imparando l'imballaggio, fa l'uso di distutils file specifici solo mi fanno più confusa dal momento che non riesco a utilizzare la C-codice come estensioni Python? O devo divido il mio C e funzionalità Python per progetti separati per essere in grado di comprendere i concetti di packaging migliore?

È stato utile?

Soluzione

distutils possono essere usati per installare programmi utente finale, ma è più utile quando lo si utilizza per le librerie di Python, in quanto può creare pacchetti di origine e anche installarli nel posto giusto. Per questo io direi che è più o meno necessaria.

Ma per un programma utente Python fine si può utilizzare anche il successo o quello che volete e siete abituati a, in quanto non è necessario installare alcun codice nella directory site-packages di Python, e non è necessario mettere il codice su PyPI e non ha bisogno di essere accessibile da altri Python-codice.

Non credo distutils può né essere più o meno complicato da usare in installazione di un programma di utente finale rispetto ad altri strumenti. A tutti questi install / strumenti di imballaggio sono hella-complessi, come avrebbe detto Cartman.

Altri suggerimenti

Perché utilizza un comando unificato python setup.py install? distutils o setuptools? Qualunque cosa, basta usare uno di quelli.

Per lo sviluppo, è anche molto utile perché non c'è bisogno di preoccuparsi dove trovare la dipendenza così e così. Finché è roba libreria Python / sistema standard di base, setup.py dovrebbe trovare per voi. Con setup.py, non si richiede roba o brutti autotools più ./configure per creare enormi Makefiles. Funziona proprio (tm)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top