LINUX.ORG.RU

установить на 64-битной Ubuntu 14.04

 ,


0

1

Есть программы, которые уже успешно работает в 32-битном режиме на этой установке. Требуется установить python 32-битный.

sudo apt-get install python2.7:i386 предлагает снести пол системы

Я собрал Python вручную и софт что его требует именно 32-битным - работает. Встала проблема собрать NumPy и SciPy под этот 32-битный Python.

В общем, и штатный из реп не ставится, и сборка из исходников не проходит - мешаются системные либы.

Ответ на: комментарий от takino

зачем тебе 32битный питон?

Есть некое мерзкое проприетарное ПО, которое лишь 32-бита имеет, и его можно расширять питонскими модулями, которые работают совместно с нативными модулями, а они не позволяют работать и собираться если система 64-битная.

Не знаю, надо срочно решать проблему, либо виртуалку, либо chroot, virtualenv и черт знает что еще...

В принципе голый питон я под это собрал чисто 32-битный и с ним проприетарная софтина пашет, но как этот питон расширить модулями? Не могу собрать NumPy и SciPy, хотя Cython и некоторые другие собрал из исходников. А эти два конфликтуют, тянут либы из системы 64-битные но ругаются на линковку - но ведь я i386 версии для всего установил!

Не знаю, есть такая штука PIP, надо подумать что это и его прикручивать.

I-Love-Microsoft ★★★★★
() автор топика
Последнее исправление: I-Love-Microsoft (всего исправлений: 1)
Ответ на: комментарий от Aswed

Зачем ему недо64битная ОС? Не тот случай.

anonymous
()
Ответ на: комментарий от Aswed

Серьезно??? Такая примитивная вещь не получится штатно? И убунту предательски подвела - хочет пол системы удалить для python2.7:i386

I-Love-Microsoft ★★★★★
() автор топика
Ответ на: комментарий от I-Love-Microsoft

В чруте генту собери. Профит. Естественно убунта на такое не рассчитана штатно. Хотя наверно можно и её в чрут засунуть.

anonymous
()

Если все нужные 32-х битные либы стоят можно попробовать поставить anaconda, там есть и python, numpy, scipy, cython. Дистрибуция бинарная.

rk17
()
Ответ на: комментарий от rk17

Если все нужные 32-х битные либы стоят можно попробовать поставить anaconda, там есть и python, numpy, scipy, cython. Дистрибуция бинарная

Отличный совет!!! Сейчас попробую, как-то я не приметил этого симпатичного слона! Оно 32 бита, с кучей нужных модулей!

( А то сижу страдаю собираю зависимости вручную, споткнулся на NumPy - в упор не хочет принимать blas, cblas не собирается и прочий гемор... Ну не хочет оно собираться в 64-битной среде, всё не то норовит ухватить... )

I-Love-Microsoft ★★★★★
() автор топика
Ответ на: комментарий от rk17
Could not find platform independent libraries <prefix>
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
ImportError: No module named site

Когда запускаю из /path/to/anaconda2/bin то могу спокойно вызвать import site и многие другие модули, всё работает.

Когда же я запускаю из своего скрипта:

#!/bin/bash

export PATH=/home/user/t/anaconda2/bin:$PATH:/home/user/t/altera/15.1/modelsim_ase/bin

file $(which python2.7)
which python
python --version

export VSIM_ARGS=" -L altera_mf_ver -L lpm_ver "
linux32 make ARCH=i686 SIM=modelsim
Достаточно ли просто указать путь до Python 2.7 при помощи PATH? Или надо еще что-то указать?

I-Love-Microsoft ★★★★★
() автор топика
Ответ на: комментарий от rk17

Да... Я отказался ))) В общем, решил так:

export PYTHONHOME=/home/user/t/anaconda2
export PATH=$PYTHONHOME/bin:$PATH:/home/user/t/altera/15.1/modelsim_ase/bin

В общем, проблема решена! Всем спасибо, что не обошли тему стороной и попытались помочь. Уже боялся что реально придется chroot городить.

Особенно помог совет поставить Anaconda, замечательный проект, всё заработало с полпинка!

I-Love-Microsoft ★★★★★
() автор топика
Ответ на: комментарий от I-Love-Microsoft

Для того что бы накатить x32 питон, тебе понадобятся x32 библиотеки которые с ним связаны, glib и т.д. А держать в системе мультилиб всегда геморрой. Это не только нетривиально завести так потом еще могут быть проблемы с пакетными менеджерами которые разбираются с зависимостями(конфликты могут пойти). Т.е. после того как ты сделаешь то что хочешь, у тебя в будущем могут начаться проблемы. Лучше заведи виртуалку, ее проще поднять и от нее проще избавиться.

Aswed ★★★★★
()
Ответ на: комментарий от Aswed

Увидел ли ты это сообщение? :)

В общем, проблема решена! Всем спасибо, что не обошли тему стороной и попытались помочь. Уже боялся что реально придется chroot городить. Особенно помог совет поставить Anaconda, замечательный проект, всё заработало с полпинка!

Далее, тогда почему многие программы штатно устанавливаются и работают, если ставить пакеты с :i386. Твоя версия не сходится с реальностью: ставить софт другой разрядности это штатная функция, которая работает во многих случаях, кроме как с Python.

I-Love-Microsoft ★★★★★
() автор топика
Ответ на: комментарий от Aswed
user@user:~$ uname -a
Linux user 3.19.0-56-generic #62~14.04.1-Ubuntu SMP Fri Mar 11 11:03:15 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
sudo apt-get install mc:i386

file $(which mc)
/usr/bin/mc: ELF 32-bit LSB  shared object, Intel 80386

Нет причин питону не быть так же установленным, но видимо оно хочет подменить 64-битный оригинал собой как это сделал mc, и это приводит к такому поведению.

I-Love-Microsoft ★★★★★
() автор топика

Засунь в LXC контейнер, оверхед минимален.

manntes-live ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.