如果项目中未包含cuda_test.cu
文件,则代码运行正常。
当包含这样的文件时,我收到以下错误消息
mfcs100u.lib(dllmodul.obj) : error LNK2005: DllMain already defined in MSVCRT.lib(dllmain.obj)
cuda_test.c
你有以下头文件,一个全局函数和一个包装器。
#include <cuda.h>
#include <cuda_runtime.h>
#include <device_launch_parameters.h>
所以我不确定导致这个问题的原因。
经过一番研究,似乎这个问题相当普遍而且已经存在 fixes。但是这开始在代码的不同部分给出麻烦。 (如果此信息相关,则“StdAfx.h”包含在所有.cpp文件中。)
这是一个用C ++编写的巨大项目,我正在尝试并行化它的某些部分。
非常感谢一些帮助。如果需要,我可以提供额外的细节。
答案 0 :(得分:1)
您需要确保应用的所有部分都链接到同一个运行时。
在解决方案资源管理器中,右键单击.cu
文件,然后选择“属性”。转到CUDA C/C++ > Host
并确保Runtime Library
设置为与项目其余部分相同。