Файлы общих объектов не создаются - Boost, Python, Ubuntu 18.04

Система: Ubuntu 18.04. Python 3.8 - моя глобальная установка, но у меня есть несколько локальных установок различных версий Python от 2.7, 3.4, 3.6, 3.7, 3.8 и 3.9.

У меня есть проект, который я использую с зависимостью от повышения. Когда я пытаюсь импортировать его, появляется сообщение

ImportError: libboost_python36.so.1.67.0: cannot open shared object file: No such file or directory.

Чтобы убедиться, что он не существует, я сделал

locate libboost_python36

и не нашел результатов. Однако выполнение

locate libboost_python

действительно вызвало файл с именем

libboost_python38.so.1.71.0

, предположительно потому, что он мне понадобился для другого проекта с другой установкой python.

Чтобы выполнить ускоренную установку, я загрузил правильную версию из их выпуска (boost_1_67_0.tar.gz) и распаковал ее. Затем я выполнил следующие команды

cd boost_1_67_0
sudo ./bootstrap.sh --with-python=/home/myusername/.local/bin/python3.6m --with-python-version=python3.6
sudo ./b2 install
sudo ./bjam install

. Однако по завершении я получаю ту же ошибку, и я все еще не нахожу файл с именем libboost_python36.so.1.67.0 при запуске поиска.

Что я делаю не так, если не создаю такой общий объектный файл?

Спасибо

0
задан 2 August 2021 в 14:40

1 ответ

Вы, наверное, изобретаете колесо.

Все упомянутое программное обеспечение уже упаковано в репозитории Ubuntu. Начните с:

sudo apt-add-repository universe
sudo apt-get update

Используйте команды ниже, чтобы получить привязку Python 3.6 для

  • Boost 1.62:

     sudo apt-get install libboost-python1.62-dev 
     
  • Boost 1.65:

     sudo apt-get install libboost-python1.65-dev 
     

Наличие Python 3.8 может создать проблемы на системном уровне.

2
ответ дан 20 August 2021 в 10:30

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

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