Ошибка связи при компиляции CUDA из командной строки - PullRequest
1 голос
/ 24 февраля 2012

Я пытаюсь скомпилировать тестовую программу CUDA в Windows 7 x64 через командную строку с помощью этой команды:

nvcc cuda.cu

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

cuda.cu
tmpxft_00000d14_00000000-3_cuda.cudafe1.gpu
tmpxft_00000d14_00000000-8_cuda.cudafe2.gpu
cuda.cu
tmpxft_00000d14_00000000-3_cuda.cudafe1.cpp
tmpxft_00000d14_00000000-14_cuda.ii
LINK : fatal error LNK1104: cannot open file 'kernel32.lib'

У меня есть файл kernel.lib в C: \ Program Files (x86) \ Microsoft SDKs \ Windows \ v7.0A \ Lib и добавление его в переменную среды CUDA lib не работает.

Что будет причиной этой ошибки и как ее исправить?

1 Ответ

2 голосов
/ 27 февраля 2012

Вы не должны указывать расположение MS lib в переменной окружения.Вам нужно использовать параметр командной строки '-L', как в

nvcc <file> -L"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Lib"

На самом деле вам, вероятно, нужна установленная Visual Studio, потому что вам нужен компилятор хоста для сборки кода хоста.

...