Como executar o meu python compilado não o sistema instalado

1

Eu compilei o python3.6.5 da fonte e o vinculei ao openssl compilado da seguinte maneira:

export LDFLAGS="-L/usr/local/openssl/lib/ -L/usr/local/openssl/lib64/"
export LD_LIBRARY_PATH="/usr/local/openssl/lib/:/usr/local/openssl/lib64/"
export CPPFLAGS="-I/usr/local/openssl/include -I/usr/local/openssl/include/openssl"
./configure --prefix=/usr/local/openssl/
make
make install

E o openssl é instalado da seguinte forma:

./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl shared zlib
make
make install

/my/path/ nas instruções acima é substituído por /usr/local/openssl/ , onde o openssl também é construído no Ubuntu 18, mas eu o compilei da fonte porque faltam alguns recursos que o sistema precisa.

Agora, quero executar meu programa python usando meu python de compilação e não o do sistema. Como fazer isso? Se eu escrever python myprog.py , ele executará o python do sistema.

    
por user9371654 05.08.2018 / 06:52

1 resposta

0

Se você tem um Python personalizado instalado em /some/path :

  1. Adicionar a linha shebang em myscript.py selecionará o python personalizado ao executá-lo como script executável:

    #!/some/path/bin/python
    import sys
    print(sys.version)
    

    Executando o script:

    $ chmod +x myscript.py
    $ ./myscript.py
    2.7.10 (default, Oct  6 2017, 22:29:07)
    [GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.31)]
    
  2. Você pode passar explicitamente o caminho para o executável python para executar o script:

    $ /some/path/bin/python myscript.py
    
  3. A adição de /some/path/bin a PATH selecionará o python personalizado em vez do sistema um:

    $ PATH=/some/path/bin:$PATH python myscript.py
    

A julgar pela linha ./configure --prefix=/usr/local/openssl/ que você forneceu, parece que você instalou o Python sob /usr/local/openssl ; o bin dir deve ser /usr/local/openssl/bin .

    
por 05.08.2018 / 12:25