Основная проблема заключается в том, что вы перезаписали библиотеки, управляемые менеджером пакетов, своими файлами. Другие пакеты и системные скрипты могут (в случае Python очень сильно) зависеть от этих пакетов, возможно, от заданных версий / патчей. Если вы перезаписываете системные библиотеки, вы рискуете сломать систему.
altinstall Python позволит избежать некоторых из этих проблем, если не использовать символическую ссылку на команду python по умолчанию, но, тем не менее, он не может полностью избежать входа в систему.
Если вы хотите скомпилировать более новые версии, может быть лучше использовать другой префикс, такой как /opt или домашний каталог пользователя, который будет запускать эти программы. Python включает дополнительный механизм для отделения системных библиотек от требований приложений в форме virtualenvs.
Для установки более новых версий Python для личного использования (в отличие от настройки сервера или многопользовательской системы, я рекомендую следующие шаги. (Первые 3 обычно применимы к любой упаковке.):
./configure --prefix=$HOME/.local configure для установки в домашний каталог
make -j5 && make install скомпилировать с 5 процессами, установить на основе префикса configure
- Добавьте
export PATH="$HOME/.local/bin:$PATH" в конец файла .bashrc, чтобы новые установленные пакеты были на вашем пути. После этого запустите новый терминал. type python3 покажет, что python3 is /home/david/.local/bin/python3 .
- Создайте virtualenv при запуске проекта, используя
pyvenv-3.4 предоставляемый пакетом. $HOME/.local/bin/pyvenv-3.4 /path/to/my_new_venv .
- Активируйте virtualenv при работе над вашим проектом:
source /path/to/my_venv/bin/activate . Установите пакеты там с помощью pip: pip install flask