[Python] uwsgi 3.6 su Debian stretch

Alessandro Dentella sandro a e-den.it
Mer 21 Feb 2018 19:25:38 CET


Ciao Paolo,

Grazie, ho risolto, sotto lo spiego...

On Wed, Feb 21, 2018 at 05:44:28PM +0100, Paolo Melchiorre wrote:
> 2018-02-21 17:28 GMT+01:00 Alessandro Dentella <sandro a e-den.it>:
> > vorrei passare alla 3.6 in produzione dove uso uwsgi (+ nginx) su
> > debian stretch.
> >
> > Pensavo di potere adattare i suggerimenti di Paolo Melchiorre [1] per
> > Ubuntu, ma ho dei problemi... in realtà vedo che i problemi ci sono
> > ancora prima di compilare uwsgi... il modo di testare la versione di
> > Python di un plugin che lui suggerisce è:
> >
> >    uwsgi --plugin python36 -s :0
> >
> > che mi funziona su ubuntu ma non su Debian, non trova mai
> > il plugin (anche se poi funziona nel setup reale)::
> >
> >   root a thux-dev-stretch:~# uwsgi --plugin python3 -s :0
> >   open("./python3_plugin.so"): No such file or directory [core/utils.c line 3686]
> >   !!! UNABLE to load uWSGI plugin: ./python3_plugin.so: cannot open shared object file: No such file or directory !!!
> >
> > Qual'è il modo corretto di testare quale interprete usa e qual'è il
> > modo corretto di generare un plugin per uwsgi + python3.6  su debian
> > stretch?
> > [1] http://www.paulox.net/2017/04/04/how-to-use-uwsgi-with-python3-6-in-ubuntu/
>
> Ciao Alessandro,
>
> La guida che ho scritto credo sia specifico per Ubuntu che nelle
> versioni 16.10 e 17.04 ha avuto in contemporanea python 3.5 di default
> e python 3.6 opzionale. In questo contesto il plugin python3 era
> compilato con python3.5 e quindi ho dovuto installare python3.6 (come
> descritto nella guida) e poi compilare un plugin apposito.
>
> Come puoi vedere per Ubuntu esiste il pacchetto python3.6
> https://packages.ubuntu.com/search?suite=all&searchon=names&keywords=python3.6
> mentre non esiste per Debian
> https://packages.debian.org/search?suite=stable&section=all&arch=any&searchon=names&keywords=python3.6
>
> Le alternative che hai per usare uwsgi e python3.6 mi sembrano 2:
> - aggiornare a Debian Buster che ha python3.6
> https://packages.debian.org/buster/python3
> - installare python3.6 su Debian Stretch diversamente, ma in questo la
> mia guida poi non credo ti sarà troppo utile


Python3.6 l'ho installato da qui [1] e con quello installato la tua
guida funziona correttamente.

Il mio problema era che avevo un uwsgi installato a mano (penso per
errore, non me ne ricordavo), quindi non vedeva i plugin ma da riga di
comando prevaleva sul path di quello ufficiale che invece veniva
utilizzato (correttamente) da uwsgi-emperors

Ora sono in una situazione in cui ho i pacchetti che indichi nel post
e sono riuscito a compilarlo ed il test che hai indicato funziona e
mostra che sto usando Python 3.6.3.

Immagino che ora mi funzioni, vado a provare...

sandro




[1] https://github.com/chriskuehl/python3.6-debian-stretch


Maggiori informazioni sulla lista Python