ошибка в компиляции CUDA - PullRequest
       20

ошибка в компиляции CUDA

1 голос
/ 18 ноября 2009

Я получаю эту ошибку при попытке запустить примеры кодов в CUDA SDK. У меня CUDA 2.3 и Visual studio 2008

ССЫЛКА: фатальная ошибка LNK1181: не удается открыть входной файл 'cutil32D.lib'

Любые указатели, как решить эту проблему?

Ответы [ 3 ]

5 голосов
/ 19 ноября 2009

Поскольку вы компилируете образцы SDK, файлы проекта, вероятно, правильные. Гораздо более вероятно, что вы не создали библиотеку cutil. Перейдите в каталог установки SDK, затем в каталог «C». Вы увидите «общий» каталог, там откройте решение cutil.sln (или cutil_vc90.sln для VS2008) и соберите его в режимах выпуска и отладки для вашей платформы.

Затем попробуйте снова.

Библиотека cutil используется для того, чтобы избежать репликации одного и того же кода во всех примерах, если вы запускаете свой собственный проект, я бы избегал повторного использования библиотеки cutil и писал свою собственную программу проверки. Например, вам, вероятно, следует изящно потерпеть неудачу, если вы обнаружите ошибку CUDA, а не просто вызовите exit (), как это сделано в cutil.

Файл cuda.rules, включенный в SDK, настоятельно рекомендуется! Используя это, вы можете просто добавить .cu файлы в любой проект, и Visual Studio будет знать, как их скомпилировать и связать с конечным исполняемым файлом. Легко!

1 голос
/ 22 ноября 2010

Я столкнулся с той же проблемой. Оказалось, что мне нужно собрать не только проект cutil, но и проект shrUtils в общей папке SDK.

1 голос
/ 18 ноября 2009

Ваш проект MSVC должен включать библиотеку cutil32D.lib для ссылки.Как только вы укажете это как библиотеку, компоновщик должен включить в последний двоичный артефакт, эта проблема исчезнет.Казалось бы, библиотека отсутствует в том месте, где ее ищет компоновщик.Вам придется изменить пути поиска в библиотеке или переместить этот файл в каталог, в котором уже ищет компоновщик.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...