Установка Python 3.8.1 --with-openssl --without-root / apt / yum - PullRequest
1 голос
/ 29 января 2020

Мне нужно установить Python3 с ssl в другом userdir. Я работаю над Debian без root привилегий. Я действительно пытаюсь найти решение самостоятельно, но, потратив несколько часов, я все еще не могу сделать это правильно.

Путь для установки ssl и python - это $ HOME / .local /

$ HOME - это всегда абсолютный путь, например / path / to / install

Журналы ниже

Что я уже пробовал:

1. Создание установочных папок

cd $HOME
mkdir .local
cd .local
mkdir ssl
mkdir python
mkdir src
cd src

2. Загрузка последних версий tar Python и openssl

wget https://www.python.org/ftp/python/3.8.1/Python-3.8.1.tgz
wget https://www.openssl.org/source/openssl-1.1.1d.tar.gz
tar xvfz Python-3.8.1.tgz
tar xvfz openssl-1.1.1d.tar.gz

3. Сконфигурировать, Сделать, Установить Openssl (в $ HOME / .local / ssl)

cd openssl-1.1.1d
./config --prefix=$HOME/.local/ssl
make && make install

4. Редактирование модулей / настроек, изготовление, установка Python

cd $HOME/.local/src/Python-3.8.1
cd Modules
vi Setup

Модули / настройка

210 SSL=$HOME/.local/ssl
211 _ssl _ssl.c \
212         -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
213         -L$(SSL)/lib -lssl -lcrypto

настройка

cd $HOME/.local/src/Python-3.8.1
./configure --prefix=$Home/.local/python

Фрагменты журнала

Настройка Python

checking for openssl/ssl.h in /usr/local/ssl... no
checking for openssl/ssl.h in /usr/lib/ssl... no
checking for openssl/ssl.h in /usr/ssl... no
checking for openssl/ssl.h in /usr/pkg... no
checking for openssl/ssl.h in /usr/local... no
checking for openssl/ssl.h in /usr... no
checking whether compiling and linking against OpenSSL works... no

Альтернативный журнал: Кажется, это не выглядит в нужных местах. Уже пытался дать подсказку при конфигурировании

./configure --prefix=$Home/.local/python --with-openssl=$HOME/.local/ssl

Журнал при конфигурировании из-за следующей строки

. / python: ошибка при загрузке общих библиотек: libssl.so.1.1: невозможно открыть общий объектный файл: нет такого файла или каталога

У кого-нибудь есть подсказка, где libssl.so.1.1 должен быть?

Заранее спасибо.

Wip

1 Ответ

1 голос
/ 29 января 2020

Решена проблема путем добавления Path в LD_LIBRARY_PATH

Необходимые библиотеки можно найти в path / to / ssl / lib

Для меня добавлена ​​следующая строка в .profiles или .bashr c исправлено Выпуск

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/.local/ssl/lib
...