2016-06-13 26 views
5

binari ruote molti-linux sono ora supportati:In che modo Pip decide quali molte ruote linux usare?

https://github.com/pypa/manylinux

In particolare vorrei installare la ruota di molti Linux per SciPy su Travis, utilizzando il sistema operativo versione beta fidato. Le ruote sono elencate qui:

https://pypi.python.org/pypi/scipy/0.17.1

ottengo:

Collecting scipy 
    Downloading scipy-0.17.1.tar.gz (12.4MB) 
    100% |████████████████████████████████| 12.4MB 100kB/s 

Invece di:

Collecting scipy 
    Downloading scipy-0.17.1-cp27-cp27mu-manylinux1_x86_64.whl (39.5MB) 
    100% |████████████████████████████████| 39.5MB 37kB/s 

Così, al fine di risolvere questo problema, vorrei sapere, come pip determina quale ruota scaricare e installare. E sì, ho aggiornato pip alla versione 8.1.2 che supporta molte ruote linux binari.

In particolare, sono non interessato a soluzioni alternative, basta rispondere alla domanda, se è possibile.

risposta

5

È necessario il pip 8.1 o successivo e una distribuzione linux basata su glibc (e non su musc libc come alpino linux, ad esempio).

MODIFICA: la funzione pip.pep425tags.get_supported() deve restituire l'elenco di platform tags supportato nell'ordine. Pip preferisce i tag delle ruote che appaiono in precedenza in questo elenco sui tag che appaiono in seguito.

Anche Posso gentilmente suggerisco di utilizzare Python 3.5 invece di 2.7;)

+0

Sì, non appena posso confermare che il nostro stack tecnico funziona con 3.5 passerò a 3.5. Ho pip 8.1 e ubuntu 14.04. Inoltre, non hai risposto alla domanda, come richiesto. – esc

+0

inoltre, su 3.5 l'installazione della ruota scipy funziona bene ... – esc

+0

Sembra che la variante da 2.7 mu non sia stata caricata (solo la variante m è disponibile per Linux 64bit). Potrebbe essere una svista del gestore di scipy release. Python 3 non ha questo problema perché esiste un unico modo per gestire unicode. – ogrisel

1

Quindi, la risposta corretta è che pip ha una lista di tag supportati e cercherà di corrispondere a quelli. pip.pep425tags.get_supported() elencherà i tag per la tua piattaforma e userà anche quella lista per abbinare le ruote binarie di manylinux.

Problemi correlati