Кто-нибудь знает, что _ITERATOR_DEBUG_LEVEL устанавливает NVCC?
Я работаю в проекте Cmake в VS2010 и получаю сообщение об ошибке при попытке связать проект:
2>warper_cuda.lib(cudakernels.cu.obj) : error LNK2038: mismatch detected for '_ITERATOR_DEBUG_LEVEL': value '0' doesn't match value '2' in ColorTable.obj
Iможет установить для _ITERATOR_DEBUG_LEVEL значение 0 для файлов c ++, но тогда он больше не будет связываться с некоторыми другими библиотеками.Поэтому мне нужен способ, чтобы nvcc компилировался с уровнем 2.
Использование всего в режиме релиза работает, поэтому уровень, кажется, установлен правильно.Командная строка, используемая для компиляции, выглядит следующим образом:
"C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v4.0/bin/nvcc.exe" C:/path/to/cudakernels.cu -c -o "C:/path/to/cudakernels.cu.obj" -ccbin "c:/Program Files (x86)/Microsoft Visual Studio 10.0/VC/bin" -m64 -DQT_DLL -DQT_GUI_LIB -DQT_CORE_LIB -Xcompiler ,\"/DWIN32\",\"/D_WINDOWS\",\"/W3\",\"/Zm1000\",\"/EHsc\",\"/GR\",\"/openmp\" -DNVCC -I -IC:/include/directory ...