LNK2038:检测到与 cuda 'RuntimeLibrary'不匹配
LNK2038: mismatch detected for 'RuntimeLibrary' with cuda
我正在用Visual Studio 2013编译一个包含cpp和cu文件的动态库,在链接期间我得到了这样的错误:
proj_generated_cufile.cu.obj : error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in file.obj
libcpmt.lib(ios.obj) : error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MD_DynamicRelease' in file.obj
我没有使用任何额外的库,我已经尝试将项目首选项中的运行时库-> C/c++ ->代码生成设置为"多线程DLL (/MD)",并在CUDA下的C/c++ -> Host设置为"多线程DLL (/MD)"或"从主机继承"。
我正在用cmake (cuda_add_library)生成项目。
可能是,问题是,我正在尝试编译一个动态库?与这个假设相矛盾的是,当我只编译cpp文件时,编译成功了。
谢谢你的建议!
我想,一个链接到CRT DLL (/MD),另一个是静态链接(/MT)。