Ubuntu 16.04 - И 32-битный, и 64-битный питон

Я пытаюсь установить python-pin . Этот инструмент использует Pin (инструментальный инструмент Intel), который является 32-битным. Когда я пытаюсь запустить python-pin, я получаю:

E: Unable to load /home/censored/Documents/tools/Python_Pin/obj-intel64/Python_Pin.so: dlopen failed: library "libpython2.7.so.1.0" not found

У меня действительно есть libpython2.7.so.1.0, расположенный по адресу:

/usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0

Но он в 64-битном библиотека, требующая этого, является 32-битной. Проведя немало исследований, я нашел следующие вопросы, похожие на мои:

Как я могу установить 32-битный питон на 64-битную Ubuntu

один для Ubuntu 10.10, и решение, похоже, не работает для меня.

Они были более общими:

Как запустить 32-битную программу на 64-битной версии Ubuntu?

Как запустить 32-битное приложение в Ubuntu 64-bit?

Прочитав их, я установил 32-битную версию python-dev с:

$ sudo apt-get install python-dev:i386

Установка прошла успешно, но я нигде не могу найти 32-битную версию libpython2.7.so.1.0 и все еще не могу запустить python-pin.

РЕДАКТИРОВАТЬ:

Я вручную скомпилировал 32-битный Python таким образом:

$ CC="gcc -m32" LDFLAGS="-L/lib32 -L/usr/lib32 \
-Lpwd/lib32 -Wl,-rpath,/lib32 -Wl,-rpath,/usr/lib32" ./configure --prefix=/opt/pym32 --enable-shared
$ make
$ sudo make install

И теперь у меня наконец есть 32-битный файл libpython2.7.so.1.0 в моей папке Python. Тем не менее, когда я делаю:

$ LD_PRELOAD=/home/censored/Documents/tools/Python-2.7.13/libpython2.7.so.1.0 bin/python-pin Python_Pin/examples/ins_count.py /bin/ls

я получаю эти ошибки:

ERROR: ld.so: object '/home/censored/Documents/tools/Python-2.7.13/libpython2.7.so.1.0' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
2
задан 20 July 2017 в 20:01

0 ответов

Другие вопросы по тегам:

Похожие вопросы: