& ldquo; / usr / bin / ld: не удается найти -lboost_python-mt & rdquo; ошибка при установке pycuda 2011.2.2

Я устанавливаю pycuda2011.2.2 на ubuntu 11.10, но не могу его завершить. Когда я делаю pycuda-2011.2.2 $ make -j 4

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

/usr/bin/ld: cannot find -lboost_python-mt    ,
/usr/bin/ld: cannot find -lcuda

Я получил 1 точное совпадение ошибок в поиске и решении Google:

 $ sudo ln -s /usr/lib/libboost_python-mt-py26 /usr/lib/libboost_python-mt

Но booooom, Моя проблема не исчезает.

Меня заставляет задуматься, почему в google-поиске нет релевантных результатов, как будто у меня есть эта проблема. Что случилось ? Любая помощь приветствуется.

Спасибо,

3
задан 5 June 2012 в 06:57

26 ответов

Я также столкнулся с этой проблемой, но на Ubuntu 12.04. У меня было решение, подобное ответу max beckett, но вместо замены --boost-python-libname=boost_python-mt на --boost-python-libname=boost_python-mt-py26 это было --boost-python-libname=boost_python-mt-py27 (обратите внимание, что «26» изменилось на «27» в зависимости от вашей версии повышения)

Проверьте, что у вас есть:

ls /usr/lib/libboost_python*

Это было изменено при вызове ./configure, в результате которого был сделан окончательный вызов:

./configure.py --cuda-root=/usr/local/cuda --cudadrv-lib-dir=/usr/lib --boost-inc-dir=/usr/include --boost-lib-dir=/usr/lib --boost-python-libname=boost_python-mt-py27 --boost-thread-libname=boost_thread-mt --no-use-shipped-boost

Если вы уже запустили ./configure, вам необходимо удалить ./siteconf.py

0
ответ дан 25 July 2018 в 19:24

Элия указывает на исправление -lcuda. Вы также можете добавить расположение своего каталога cuda lib в ваш LD_LIBRARY_PATH.

Что касается проблемы libboost-python, запустите команду ./configure из общих команд picuda и замените --boost-python-libname=boost_python-mt на --boost-python-libname=boost_python-mt-py26.

2
ответ дан 25 July 2018 в 19:24

проблема решена. Я нашел ответ в этой теме: http://forums.nvidia.com/index.php?showtopic=224718&st=0#entry1413660

0
ответ дан 25 July 2018 в 19:24

Я также столкнулся с этой проблемой, но на Ubuntu 12.04. У меня было решение, подобное ответу max beckett, но вместо замены --boost-python-libname=boost_python-mt на --boost-python-libname=boost_python-mt-py26 это было --boost-python-libname=boost_python-mt-py27 (обратите внимание, что «26» изменилось на «27» в зависимости от вашей версии повышения)

Проверьте, что у вас есть:

ls /usr/lib/libboost_python*

Это было изменено при вызове ./configure, в результате которого был сделан окончательный вызов:

./configure.py --cuda-root=/usr/local/cuda --cudadrv-lib-dir=/usr/lib --boost-inc-dir=/usr/include --boost-lib-dir=/usr/lib --boost-python-libname=boost_python-mt-py27 --boost-thread-libname=boost_thread-mt --no-use-shipped-boost

Если вы уже запустили ./configure, вам необходимо удалить ./siteconf.py

1
ответ дан 31 July 2018 в 13:18

Элия указывает на исправление -lcuda. Вы также можете добавить расположение своего каталога cuda lib в ваш LD_LIBRARY_PATH.

Что касается проблемы libboost-python, запустите команду ./configure из общих команд picuda и замените --boost-python-libname=boost_python-mt на --boost-python-libname=boost_python-mt-py26.

3
ответ дан 31 July 2018 в 13:18

проблема решена. Я нашел ответ в этой теме: http://forums.nvidia.com/index.php?showtopic=224718&st=0#entry1413660

0
ответ дан 31 July 2018 в 13:18

Я также столкнулся с этой проблемой, но на Ubuntu 12.04. У меня было решение, подобное ответу max beckett, но вместо замены --boost-python-libname=boost_python-mt на --boost-python-libname=boost_python-mt-py26 это было --boost-python-libname=boost_python-mt-py27 (обратите внимание, что «26» изменилось на «27» в зависимости от вашей версии повышения)

Проверьте, что у вас есть:

ls /usr/lib/libboost_python*

Это было изменено при вызове ./configure, в результате которого был сделан окончательный вызов:

./configure.py --cuda-root=/usr/local/cuda --cudadrv-lib-dir=/usr/lib --boost-inc-dir=/usr/include --boost-lib-dir=/usr/lib --boost-python-libname=boost_python-mt-py27 --boost-thread-libname=boost_thread-mt --no-use-shipped-boost

Если вы уже запустили ./configure, вам необходимо удалить ./siteconf.py

1
ответ дан 2 August 2018 в 01:25

Элия указывает на исправление -lcuda. Вы также можете добавить расположение своего каталога cuda lib в ваш LD_LIBRARY_PATH.

Что касается проблемы libboost-python, запустите команду ./configure из общих команд picuda и замените --boost-python-libname=boost_python-mt на --boost-python-libname=boost_python-mt-py26.

3
ответ дан 2 August 2018 в 01:25

проблема решена. Я нашел ответ в этой теме: http://forums.nvidia.com/index.php?showtopic=224718&st=0#entry1413660

0
ответ дан 2 August 2018 в 01:25

Я также столкнулся с этой проблемой, но на Ubuntu 12.04. У меня было решение, подобное ответу max beckett, но вместо замены --boost-python-libname=boost_python-mt на --boost-python-libname=boost_python-mt-py26 это было --boost-python-libname=boost_python-mt-py27 (обратите внимание, что «26» изменилось на «27» в зависимости от вашей версии повышения)

Проверьте, что у вас есть:

ls /usr/lib/libboost_python*

Это было изменено при вызове ./configure, в результате которого был сделан окончательный вызов:

./configure.py --cuda-root=/usr/local/cuda --cudadrv-lib-dir=/usr/lib --boost-inc-dir=/usr/include --boost-lib-dir=/usr/lib --boost-python-libname=boost_python-mt-py27 --boost-thread-libname=boost_thread-mt --no-use-shipped-boost

Если вы уже запустили ./configure, вам необходимо удалить ./siteconf.py

1
ответ дан 4 August 2018 в 16:59

Элия указывает на исправление -lcuda. Вы также можете добавить расположение своего каталога cuda lib в ваш LD_LIBRARY_PATH.

Что касается проблемы libboost-python, запустите команду ./configure из общих команд picuda и замените --boost-python-libname=boost_python-mt на --boost-python-libname=boost_python-mt-py26.

3
ответ дан 4 August 2018 в 16:59

проблема решена. Я нашел ответ в этой теме: http://forums.nvidia.com/index.php?showtopic=224718&st=0#entry1413660

0
ответ дан 4 August 2018 в 16:59

Я также столкнулся с этой проблемой, но на Ubuntu 12.04. У меня было решение, подобное ответу max beckett, но вместо замены --boost-python-libname=boost_python-mt на --boost-python-libname=boost_python-mt-py26 это было --boost-python-libname=boost_python-mt-py27 (обратите внимание, что «26» изменилось на «27» в зависимости от вашей версии повышения)

Проверьте, что у вас есть:

ls /usr/lib/libboost_python*

Это было изменено при вызове ./configure, в результате которого был сделан окончательный вызов:

./configure.py --cuda-root=/usr/local/cuda --cudadrv-lib-dir=/usr/lib --boost-inc-dir=/usr/include --boost-lib-dir=/usr/lib --boost-python-libname=boost_python-mt-py27 --boost-thread-libname=boost_thread-mt --no-use-shipped-boost

Если вы уже запустили ./configure, вам необходимо удалить ./siteconf.py

1
ответ дан 6 August 2018 в 01:39

Элия указывает на исправление -lcuda. Вы также можете добавить расположение своего каталога cuda lib в ваш LD_LIBRARY_PATH.

Что касается проблемы libboost-python, запустите команду ./configure из общих команд picuda и замените --boost-python-libname=boost_python-mt на --boost-python-libname=boost_python-mt-py26.

3
ответ дан 6 August 2018 в 01:39

проблема решена. Я нашел ответ в этой теме: http://forums.nvidia.com/index.php?showtopic=224718&st=0#entry1413660

0
ответ дан 6 August 2018 в 01:39

Я также столкнулся с этой проблемой, но на Ubuntu 12.04. У меня было решение, подобное ответу max beckett, но вместо замены --boost-python-libname=boost_python-mt на --boost-python-libname=boost_python-mt-py26 это было --boost-python-libname=boost_python-mt-py27 (обратите внимание, что «26» изменилось на «27» в зависимости от вашей версии повышения)

Проверьте, что у вас есть:

ls /usr/lib/libboost_python*

Это было изменено при вызове ./configure, в результате которого был сделан окончательный вызов:

./configure.py --cuda-root=/usr/local/cuda --cudadrv-lib-dir=/usr/lib --boost-inc-dir=/usr/include --boost-lib-dir=/usr/lib --boost-python-libname=boost_python-mt-py27 --boost-thread-libname=boost_thread-mt --no-use-shipped-boost

Если вы уже запустили ./configure, вам необходимо удалить ./siteconf.py

1
ответ дан 7 August 2018 в 19:08

Элия указывает на исправление -lcuda. Вы также можете добавить расположение своего каталога cuda lib в ваш LD_LIBRARY_PATH.

Что касается проблемы libboost-python, запустите команду ./configure из общих команд picuda и замените --boost-python-libname=boost_python-mt на --boost-python-libname=boost_python-mt-py26.

3
ответ дан 7 August 2018 в 19:08

проблема решена. Я нашел ответ в этой теме: http://forums.nvidia.com/index.php?showtopic=224718&st=0#entry1413660

0
ответ дан 7 August 2018 в 19:08

Я также столкнулся с этой проблемой, но на Ubuntu 12.04. У меня было решение, подобное ответу max beckett, но вместо замены --boost-python-libname=boost_python-mt на --boost-python-libname=boost_python-mt-py26 это было --boost-python-libname=boost_python-mt-py27 (обратите внимание, что «26» изменилось на «27» в зависимости от вашей версии повышения)

Проверьте, что у вас есть:

ls /usr/lib/libboost_python*

Это было изменено при вызове ./configure, в результате которого был сделан окончательный вызов:

./configure.py --cuda-root=/usr/local/cuda --cudadrv-lib-dir=/usr/lib --boost-inc-dir=/usr/include --boost-lib-dir=/usr/lib --boost-python-libname=boost_python-mt-py27 --boost-thread-libname=boost_thread-mt --no-use-shipped-boost

Если вы уже запустили ./configure, вам необходимо удалить ./siteconf.py

1
ответ дан 10 August 2018 в 07:39

Элия указывает на исправление -lcuda. Вы также можете добавить расположение своего каталога cuda lib в ваш LD_LIBRARY_PATH.

Что касается проблемы libboost-python, запустите команду ./configure из общих команд picuda и замените --boost-python-libname=boost_python-mt на --boost-python-libname=boost_python-mt-py26.

3
ответ дан 10 August 2018 в 07:39

проблема решена. Я нашел ответ в этой теме: http://forums.nvidia.com/index.php?showtopic=224718&st=0#entry1413660

0
ответ дан 10 August 2018 в 07:39

Я также столкнулся с этой проблемой, но на Ubuntu 12.04. У меня было решение, подобное ответу max beckett, но вместо замены --boost-python-libname=boost_python-mt на --boost-python-libname=boost_python-mt-py26 это было --boost-python-libname=boost_python-mt-py27 (обратите внимание, что «26» изменилось на «27» в зависимости от вашей версии повышения)

Проверьте, что у вас есть:

ls /usr/lib/libboost_python*

Это было изменено при вызове ./configure, в результате которого был сделан окончательный вызов:

./configure.py --cuda-root=/usr/local/cuda --cudadrv-lib-dir=/usr/lib --boost-inc-dir=/usr/include --boost-lib-dir=/usr/lib --boost-python-libname=boost_python-mt-py27 --boost-thread-libname=boost_thread-mt --no-use-shipped-boost

Если вы уже запустили ./configure, вам необходимо удалить ./siteconf.py

1
ответ дан 15 August 2018 в 19:42

Элия указывает на исправление -lcuda. Вы также можете добавить расположение своего каталога cuda lib в ваш LD_LIBRARY_PATH.

Что касается проблемы libboost-python, запустите команду ./configure из общих команд picuda и замените --boost-python-libname=boost_python-mt на --boost-python-libname=boost_python-mt-py26.

3
ответ дан 15 August 2018 в 19:42

проблема решена. Я нашел ответ в этой теме: http://forums.nvidia.com/index.php?showtopic=224718&st=0#entry1413660

0
ответ дан 15 August 2018 в 19:42

Решение elzirac лучше всего подходит для меня. В целом, рабочий процесс установки, который работал для меня на Ubuntu 12.04, это:

Убедитесь, что система использует python 2.7.x по умолчанию:

python --version    

(он должен сказать Python 2.7. x)

Устранить старые драйверы Nvidia и установить предварительные требования CUDA 5.5:

sudo apt-get remove --purge nvidia*    
sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev    

Установить CUDA 5.5:

wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1204/x86_64/cuda-repo-ubuntu1204_5.5-0_amd64.deb    
sudo dpkg -i cuda-repo-ubuntu1204_5.5-0_amd64.deb    
sudo apt-get update    
sudo apt-get install cuda    

Обновить переменные среды CUDA 5.5:

sudo echo "/usr/local/cuda-5.0/lib64" > /etc/ld.so.conf.d/cuda-5-5.conf    

Используйте текстовый редактор, чтобы добавить :/usr/local/cuda-5.5/bin в конец строки PATH в /etc/environment

Загрузить pycuda:

wget https://pypi.python.org/packages/source/p/pycuda/pycuda-2013.1.1.tar.gz

Распаковать :

tar xvzf pycuda-2013.1.1.tar.gz    

Установить:

cd pycuda-2013.1.1    

rm siteconf.py    

./configure.py --cuda-root=/usr/local/cuda --cudadrv-lib-dir=/usr/lib --boost-inc-dir=/usr/include --boost-lib-dir=/usr/lib --boost-python-libname=boost_python-mt-py27 --boost-thread-libname=boost_thread-mt --no-use-shipped-boost    
sudo make install    

Проверить установку pycuda:

cd test
python test_driver.py    
1
ответ дан 18 August 2018 в 22:34

Есть две библиотеки, которые вам кажутся отсутствующими, которые вам нужно установить в первую очередь.

Boost.Python

Это обеспечивается libboost-python и ``. Или, как , эти инструкции говорят, что для установки этого и некоторых других предварительных условий (которые у вас могут или не могут быть на основе ваших сообщений об ошибках), запустите:

sudo apt-get install build-essential python-dev python-setuptools libboost-python-dev libboost-thread-dev -y

(Я бы не советовал всем всем инструкциям на этой странице писать от начала до конца, хотя они не написаны с учетом Ubuntu 11.10 и вам не нужны, и вероятно, не хотят, чтобы ваша система использовала более старый компилятор, чем официально предоставлена ​​для него.)

CUDA

Если вы уже загрузили CUDA с веб-сайта Nvidia и установили это, тогда вам просто нужно указать, где:

./configure.py --cuda-root=/where/ever/you/installed/cuda

(Подробнее см. стр. на странице picuda .)

Перед этим вы можете начать с нуля или запустить make distclean (или make clean, если make distclean не распознается).

Если вы еще не загрузили и не установили CUDA , вы можете сделать это на веб-сайте Nvidia. В частности, на этой странице возьмите 32-битную или 64-разрядную версию инструментария CUDA для Ubuntu 11.04 (это самый близкий к вашей системе доступный и, вероятно, будет работать). Если вы не уверены, что у вас установлена ​​32-разрядная или 64-разрядная версия Ubuntu, запустите uname -m. Если он говорит x86_64, у вас есть 64-битная версия; в противном случае у вас будет 32-разрядная версия. Кроме того, захватите драйверы разработки и SDK.

Быстрые ссылки (32-разрядные): Инструментарий Драйверы SDK Быстрые ссылки ( 64-бит): Инструментарий Драйверы SDK

3
ответ дан 18 August 2018 в 22:34

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

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