установить модуль CUDA не удается найти библиотеку драйвера CUDA - PullRequest
5 голосов
/ 10 марта 2012

Я пытаюсь установить модуль ускорения Мануэля Чакраварти, но у меня возникают некоторые проблемы с зависимостью cuda. ​​

Я установил драйвер разработчика CUDA и инструментарий CUDA из nvidia.То есть:

ludflu@beefy ~/Downloads $ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2011 NVIDIA Corporation
Built on Thu_Jan_12_14:41:45_PST_2012
Cuda compilation tools, release 4.1, V0.2.1221

установка модуля Cuda Cabal завершается неудачно так:

cabal  install cuda
Resolving dependencies...
[1 of 1] Compiling Main             ( /tmp/cuda-0.4.1.07892/cuda-0.4.1.0/Setup.hs, /tmp/cuda-0.4.1.07892/cuda-0.4.1.0/dist/setup/Main.o )
Linking /tmp/cuda-0.4.1.07892/cuda-0.4.1.0/dist/setup/setup ...
Configuring cuda-0.4.1.0...
...
checking for library containing cuDriverGetVersion... no
configure: error: could not find CUDA driver library
********************************************************************************

The configuration process failed to locate your CUDA installation. Ensure that
you have installed the driver and developer toolkit, available from:

  http://developer.nvidia.com/cuda-downloads

Then make sure that "nvcc" is available in your PATH, or set the appropriate
directories with --extra-include-dirs and --extra-lib-dirs.

********************************************************************************
cabal: Error: some packages failed to install:
cuda-0.4.1.0 failed during the configure step. The exception was:
ExitFailure 1

Поэтому я попытался указать путь:

cabal --extra-include-dirs=/usr/local/cuda/include --extra-lib-dirs=/usr/local/cuda/lib install cuda

Но это не удалосьТочно так же.

Любые предложения о том, что я должен попробовать дальше?

Ответы [ 3 ]

4 голосов
/ 31 мая 2012

Эта ошибка обычно указывает, что configure не смог найти объекты библиотеки CUDA. В частности, вам, вероятно, придется установить LD_LIBRARY_PATH в дополнение к использованию --extra-include_dirs и --extra-lib-dirs. Попробуйте следующее,

env LD_LIBRARY_PATH=/usr/local/cuda/lib cabal --extra-include-dirs=/usr/local/cuda/include --extra-lib-dirs=/usr/local/cuda/lib install cuda

Вы не указали, какую систему вы используете. Если вы работаете в 64-битной системе Linux, вам, возможно, придется использовать /usr/local/cuda/lib64 вместо /usr/local/cuda/lib.

1 голос
/ 08 января 2014

Ответ на Ubuntu 13.10 у меня не сработал, но сработало следующее (похоже, сильно зависит от того, как был установлен драйвер nvidia, в моем случае через пакет nvidia-319)конечно, YMMV и, в идеале, установщик должен быть модифицирован для поиска в местах, где должны быть библиотеки cuda. ​​

0 голосов
/ 09 декабря 2015

Для сборки в виде библиотеки

Щелкните правой кнопкой мыши -> Свойства -> Создать -> Настройка - Построить артефакт -> Раскрывающийся список, чтобы выбрать Общая / Статическая библиотека

Разница междуShared / Static library

Теперь, чтобы включить эту библиотеку, скопируйте библиотеку в нужный проект и поместите ее в папку libs на том же уровне, что и уровень src.Обратите внимание, я предполагаю, что у вас есть папка src.

В этом проекте

Щелкните правой кнопкой мыши -> Свойства-> Построить-> Настройка-> Библиотеки ->

  • в области -l добавить имя библиотеки без префикса lib и без суффикса .so

  • в -L добавление области ../libs, запомните 2 точки , поскольку текущая папка src, не корень проекта :) ДА, я пробовал ./libs в течение 1 часаперед испытанием ../libs

...