Пытаясь 'Сделать' SDK CUDA, ld не может найти, что библиотека, ldconfig говорит, что может

Я знаю, что существует много других вопросов, подобных этому, но ни одно из решений, устанавливаемых там, не работает на меня

В основном, делая файлы примера SDK, я добираюсь /usr/bin/ld: cannot find -lcuda который был бы достаточно легким, 'находят библиотеку и бросают его в ldconfig', кроме ldconfig уже говорит, что это имеет его...

$ sudo ldconfig -v | grep cuda
/usr/local/cuda/lib64:
    libcudartemu.so.3 -> libcudartemu.so.3.0.14
    libcudart.so.3 -> libcudart.so.3.0.14
/usr/local/cuda/lib:
    libcudartemu.so.3 -> libcudartemu.so.3.0.14
    libcudart.so.3 -> libcudart.so.3.0.14
    libcuda.so.1 -> libcuda.so.195.36.15
    libcuda.so.1 -> libcuda.so.195.36.15
    libicudata.so.42 -> libicudata.so.42.1

И я проверил, существует символьная ссылка libcuda.so -> libcuda.so.1 но я все еще смущен относительно почему libcuda.so -> ...не обнаруживается

Я должен пропускать что-то действительно очевидное. Какие-либо идеи?

11
задан Bolster 26 April 2010 в 19:52
поделиться

2 ответа

ldconfig работает только с библиотеками времени выполнения, тогда как ld имеет дело с библиотеками времени сборки. В зависимости от того, как вы установили библиотеки CUDA, вам может потребоваться установить дополнительный пакет для символической ссылки, используемой во время сборки, или вам может потребоваться передать параметр -L в gcc или ld, чтобы указать ему, где символическая ссылка времени сборки.

7
ответ дан 3 December 2019 в 08:03
поделиться

Попробуйте добавить -L / usr / local / cuda / lib перед -lcuda в командной строке компилятора / компоновщика.

1
ответ дан 3 December 2019 в 08:03
поделиться
Другие вопросы по тегам:

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