Хорошо, я хочу запустить веб-приложение django на производственном VPS с CentOS. Код приложения написан с использованием Python 2.7.
Я уже установил Python 2.7 с настроенной виртуальной средой, выполнив следующие действия. руководство. Но поскольку я планирую использовать MySQL в качестве базы данных и для других целей, я должен установить пакет python-devel
. Пробовал установить с
yum установить python-devel
и получил пакет для более старой версии Python. Как я могу установить этот пакет для Python v. 2.7? Если я перезапишу стандартный Python, то пара пакетов системы (например, yum) будет повреждена. Подскажите, пожалуйста, как решить эту проблему.
ОБНОВИТЬ Информация о версиях:
Боюсь, ваш вопрос не имеет смысла. Вы собрали python из исходного кода и установили его в другом месте (/usr/local/bin
, если ссылка верна). Как только вы строите из исходников, вы полностью отходите от foo
, foo-devel
соглашение об управлении пакетами. Или, короче, нет python-devel
для установки из исходного кода.
Но вы установили необходимые библиотеки как часть этой сборки; они вероятно в /usr/local/lib
. Чтобы использовать их, необходимо будет направлять каждую новую часть программного обеспечения, которую вы хотите скомпилировать, для поиска новых библиотек Python, а не стандартных системных. Иногда, положив /usr/local/bin
первым на вашем пути, чтобы бегать python
подхватит новую версию, хватит; иногда будет переменная среды, которая указывает сборке искать в определенном месте (например, export PYTHON_LIBDIR=/usr/local/lib
; иногда будет флаг конфигурации (например, ./configure --python-libs=/usr/local/lib
). Он будет отличаться от сборки к сборке, и вам придется экспериментировать с каждой сборкой.
Если вы думаете, что это больно, вы правы; есть причина, по которой системы упаковки программного обеспечения стали очень популярными за последние 20 лет; Собрав вручную основной компонент системы из исходников, вы только что вернулись в начало 90-х - удачи!
Почему бы не использовать репозиторий IUS для установки ваших новых версий python, вы можете установить 2.7 и 3.3, и они не перезаписывают существующие установки python (например, тот, который использует yum).
http://dl.iuscommunity.org/pub/ius/stable/CentOS/6/x86_64/
Обратите внимание, что там пакеты называются python27, а не python-2.7 ..
Ненавижу раскапывать старую, но люди все еще проходят этот процесс, поэтому я вмешаюсь ... Процесс, опубликованный Раджатом, в некотором смысле верен. Если вы установили группу «dev tools», а также altinstall'd python2.7.3, вы на правильном пути.
Вы должны запустить yum install python-devel
и он будет установлен для версии 2.6. Это нормально. Продолжайте и установите любые другие необходимые вам библиотеки / моды python. (Я не могу сказать, что все они работают таким образом). Теперь вернитесь туда, где вы распаковали gzip-архив python, и запустите его заново:
# ./configure --prefix=/usr/local
# make && make altinstall
Я бы сказал работать над получением pip
и easy_install
установка для 2.7, чтобы упростить установку более поздних пакетов.
Это также работает для 2.7.5 ..
Установить инструменты разработки
# yum groupinstall "Development tools"
# yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel
Скачайте и установите Python
# wget http://python.org/ftp/python/2.7.3/Python-2.7.3.tar.bz2
# tar xf Python-2.7.3.tar.bz2
# cd Python-2.7.3
# ./configure --prefix=/usr/local
# make && make altinstall
Используя вышеуказанный шаг, я установил python 2.7 на Cent OS 6.3