Python setup.py desenvolvimento vs instalação

Duas opções em setup.py develop e install estão a confundir-me. De acordo com este site, usando develop cria um link especial para o diretório de pacotes de sites.

as pessoas sugeriram que eu usasse python setup.py install para uma nova instalação e python setup.py develop Depois de quaisquer alterações terem sido feitas no ficheiro de configuração.

alguém pode esclarecer o uso destes comandos?

Author: Garrett, 2013-09-27

3 answers

python setup.py install é usado para instalar (tipicamente terceiros) pacotes que você não vai estar desenvolvendo/editando/depurando você mesmo.

Para o seu próprio material, você deseja receber o seu pacote instalado e, em seguida, ser capaz de editar freqüentemente seu código e não ter que re-instalar o seu pacote-isso é exatamente o que python setup.py develop faz: instala o pacote (normalmente apenas uma pasta de origem) de uma forma que permite que você convenientemente editar o seu código após o seu instalado para o (virtual) de ambiente e que as alterações entrem em vigor imediatamente.

Note que é altamente recomendado usar pip install . (Instalação) e pip install -e . (instalação de programadores) para instalar pacotes, como invocação setup.py diretamente fará as coisas erradas para muitas dependências, como puxar pré-versões e versões de pacotes incompatíveis e tornar o pacote difícil de desinstalar com o pip.

 317
Author: Erik Allik, 2017-06-05 10:04:11

Da documentação . O develop não irá instalar o pacote, mas irá criar um .egg-link na pasta de implementação de volta para a pasta de código fonte do projecto.

Então é como instalar, mas em vez de copiar para o {[[2]} adiciona uma ligação simbólica (o .egg-link actua como uma ligação simbólica multiplataforma).

Dessa forma, poderá editar o código-fonte e ver as alterações directamente sem que tenha de reinstalar sempre que fizer uma pequena alteração. Presente é útil quando você é o desenvolvedor desse projeto, daí o nome develop. Se você está apenas instalando o pacote de outra pessoa que você deve usar install

 87
Author: ecerulm, 2016-08-05 04:02:30

Outra coisa que as pessoas podem achar útil ao usar o método develop é a opção --user para instalar sem o sudo. Ex:

python setup.py develop --user

Em vez de

sudo python setup.py develop
 14
Author: Taylor, 2017-03-13 14:59:53