Вопрос

Я извлек, настроил и использовал make для установочного пакета на своем сервере.

Однако я не мог использовать сделать установку.Я получаю ошибку

[~/wepapps/python/Python-2.6.1]# make install
/usr/bin/install -c python /usr/local/bin/python2.6
/usr/bin/install: cannot create regular file `/usr/local/bin/python2.6': Permission denied
make: *** [altbininstall] Error 1

Я запускаю папку с помощью

chmod +x Python-2.6.1

Я получаю ту же ошибку.

Как я могу бежать сделать установку без доступа к sudo?

Это было полезно?

Решение

  

Как я могу установить путь в моем домашнем каталоге?

mkdir /home/masi/.local

cd Python-2.6.1
make clean
./configure --prefix=/home/masi/.local
make
make install

Затем запустите, используя:

/home/masi/.local/bin/python

Точно так же, если у вас есть скрипты (например, CGI), для которых требуется собственная пользовательская версия Python, вы должны указать их явно:

#!/home/masi/.local/bin/python

вместо системного Python по умолчанию, который & # 8220; #! / usr / bin / env python & # 8221; выберу.

Вы можете изменить настройку PATH, набрав просто & # 8220; python & # 8221; из консоли запустите эту версию, но это не поможет веб-приложениям, запущенным под другим пользователем.

Если вы компилируете что-то, что ссылается на Python (например, mod_wsgi), вы должны указать ему, где найти ваш Python, иначе он будет использовать системный. Это часто делается что-то вроде:

./configure --prefix=/home/masi/.local --with-python=/home/masi/.local

Для других расширений на основе setup.py, таких как MySQLdb, вам просто нужно запустить скрипт setup.py с правильной версией Python:

/home/masi/.local/bin/python setup.py install

Другие советы

Вы не можете; во всяком случае, не в / usr . Только суперпользователи могут писать в эти каталоги. Попробуйте вместо этого установить Python в путь к домашней директории.

Расширяя ответ bobince, возникает проблема, если в вашей системе не установлен пакет разработки readline и у вас нет root-доступа.

Если Python скомпилирован без readline, клавиши со стрелками не будут работать в интерпретаторе.Однако вы можете установить автономный пакет readline следующим образом: Добавление функциональности Readline без перекомпиляции Python

С другой стороны, если вы предпочитаете компилировать Python, используя локальную установку readline, вот как это сделать.

Прежде чем делать то, что говорил Бобинс, скомпилируйте и установите readline.Вот шаги, которые нужно сделать:

Затем добавьте эту строку в свой скрипт .bash_profile:

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

И последнее, но не менее важное: выполните следующую команду

export LDFLAGS="-L$HOME/.local"

Я надеюсь, что это помогает кому-то!

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top