Как я ранее
упоминал, гражданин Н. купил себе
хостинг, где на 512 мегабайт оперативки
установлен Debian 7 amd64. Хостинг был взят с
целью поднять на нем СЭД NauDoc. Про Наудок
мы поговорим позже, сейчас достаточно
понимать, что это древнее говно мамонта
требует Python 2.4. В пакетах такого уже нет,
поэтому собирать будем из исходников.
Конечно, если
бы все было просто, я бы не стал писать
эту мутоту. Все непросто. Забегая вперед,
могу сказать, что основная сложность в
том, что теперь библиотеки и хидеры
лежат несколько в других папках файловой
системы, нежели во времена Python 2.4. Я на
этом нюансе потерял несколько часов
жизни. Надеюсь, этот пост поможет
кому-нибудь сэкономить время.
Итак, установка
необходимых пакетов
su -l aptitude search libbz2 libsqlite3 libreadline zlib1g libncurses5 libssl libgdbm | less aptitude search libbsd libssl aptitude install build-essential dkms checkinstall aptitude install libbz2-dev libsqlite3-dev libreadline-dev zlib1g-dev libncurses5-dev libssl-dev libgdbm-dev aptitude install libbsd-dev libsslcommon2 libsslcommon2-dev libcurl-dev libcurl3 aptitude install tk8.4 tk8.4-dev tk8.5 tk8.5-dev python-tk tcl-dev tcl8.4 tcl8.4-dev apt-get build-dep python
Распаковка
дистра, правка конфигов
su -l valik pushd ~/t/NauDoc-6/ tar zxf Python-2.4.4.tgz cd Python-2.4.4 nano setup.py nano Modules/Setup.dist
Правки конфигов
были такие
--- Modules/Setup.dist.orig 2014-11-25 18:49:13.153936201 +0300 +++ Modules/Setup.dist 2014-11-25 19:14:07.609936201 +0300 @@ -309,11 +309,11 @@ # every system. # *** Always uncomment this (leave the leading underscore in!): -# _tkinter _tkinter.c tkappinit.c -DWITH_APPINIT \ + _tkinter _tkinter.c tkappinit.c -DWITH_APPINIT \ # *** Uncomment and edit to reflect where your Tcl/Tk libraries are: -# -L/usr/local/lib \ + -L/usr/lib \ # *** Uncomment and edit to reflect where your Tcl/Tk headers are: -# -I/usr/local/include \ + -I/usr/include/tcl8.4 \ # *** Uncomment and edit to reflect where your X11 header files are: # -I/usr/X11R6/include \ # *** Or uncomment this for Solaris: @@ -328,7 +328,7 @@ # *** Uncomment and edit for TOGL extension only: # -DWITH_TOGL togl.c \ # *** Uncomment and edit to reflect your Tcl/Tk versions: -# -ltk8.2 -ltcl8.2 \ + -ltk8.4 -ltcl8.4 \ # *** Uncomment and edit to reflect where your X11 libraries are: # -L/usr/X11R6/lib \ # *** Or uncomment this for Solaris:
и
--- setup.py.orig 2014-11-25 17:50:51.857936201 +0300 +++ setup.py 2014-11-25 18:36:12.349936201 +0300 @@ -268,7 +268,7 @@ # be assumed that no additional -I,-L directives are needed. lib_dirs = self.compiler.library_dirs + [ '/lib64', '/usr/lib64', - '/lib', '/usr/lib', + '/lib', '/usr/lib', '/usr/lib/x86_64-linux-gnu', '/lib/x86_64-linux-gnu', ] inc_dirs = self.compiler.include_dirs + ['/usr/include'] exts = [] @@ -496,7 +496,8 @@ ssl_incs += krb5_h ssl_libs = find_library_file(self.compiler, 'ssl',lib_dirs, ['/usr/local/ssl/lib', - '/usr/contrib/ssl/lib/' + '/usr/contrib/ssl/lib/', + 'x86_64-linux-gnu' ] ) if (ssl_incs is not None and
Компиляем
cp Modules/Setup.dist Modules/Setup script -t 2>~/python24.time ~/python24.script ./configure --prefix=/opt/python24 make clean make ^d
и устанавливаем
su -l mkdir -p /opt/python24 pushd /home/valik/t/NauDoc-6/Python-2.4.4 script -t 2>~/python24.time ~/python24.script make install checkinstall -D ^d
Сообщение от
checkinstall
Done. The new package has been installed and saved to /home/valik/t/NauDoc-6/Python-2.4.4/python24_2.4.4-1_amd64.deb You can remove it from your system anytime using: dpkg -r python24
Значит, Python
2.4 установился и готов к боевому дежурству.
original post http://vasnake.blogspot.com/2015/01/python-24.html
Комментариев нет:
Отправить комментарий