Problem compiling device emulated cuda (Under matlab, using -deviceemu)

Hi,

I’m compiling matlab mex files using nvmex and it works fine.
I added “-deviceemu” to the “compflags” line in “nvmexopts.bat” and then when I try to compile I get the following error:

nvmex -f nvmexoptsEMU.bat -IC:\cuda\include -IC:\CUDA\bin -IC:\CUDA\common\inc -LC:\cuda\lib -LC:\CUDA\common\lib -LC:\CUDA\bin -lcufft -lcudart -lcutil32D -lcutil32 -lcufftemu -lcublasemu -lcuda temp.cu
temp.cu
c:\cuda\include\common_functions.h(56): warning: dllexport/dllimport conflict with “clock”
C:\Program Files\Microsoft Visual Studio 8\VC\INCLUDE\time.h(176): here; dllimport/dllexport dropped

c:\cuda\include\common_functions.h(56): warning: dllexport/dllimport conflict with “clock”
C:\Program Files\Microsoft Visual Studio 8\VC\INCLUDE\time.h(176): here; dllimport/dllexport dropped

tmpxft_00001768_00000000-3_temp.cudafe1.cpp
cl : Command line warning D9025 : overriding ‘/EHc-’ with ‘/EHc’
tmpxft_00001768_00000000-7_temp.ii
c:\cuda\include\math_functions.h(159) : error C2201: ‘__cuda_floor’ : must have external linkage in order to be exported/imported
c:\cuda\include\math_functions.h(199) : error C2201: ‘__cuda_ldexp’ : must have external linkage in order to be exported/imported
c:\cuda\include\math_functions.h(224) : error C2201: ‘__cuda_frexp’ : must have external linkage in order to be exported/imported
c:\cuda\include\math_functions.h(264) : error C2201: ‘__cuda_ceil’ : must have external linkage in order to be exported/imported
c:\cuda\include\math_functions.h(299) : error C2201: ‘__cuda_hypot’ : must have external linkage in order to be exported/imported
c:\cuda\include\math_functions.h(314) : error C2201: ‘__cuda_modf’ : must have external linkage in order to be exported/imported
c:\cuda\include\math_functions_dbl_ptx1.h(91) : error C2491: ‘__cuda_ceil’ : definition of dllimport function not allowed
c:\cuda\include\math_functions_dbl_ptx1.h(101) : error C2491: ‘__cuda_floor’ : definition of dllimport function not allowed
c:\cuda\include\math_functions_dbl_ptx1.h(226) : error C2491: ‘__cuda_hypot’ : definition of dllimport function not allowed
c:\cuda\include\math_functions_dbl_ptx1.h(256) : error C2491: ‘__cuda_ldexp’ : definition of dllimport function not allowed
c:\cuda\include\math_functions_dbl_ptx1.h(271) : error C2491: ‘__cuda_frexp’ : definition of dllimport function not allowed
c:\cuda\include\math_functions_dbl_ptx1.h(276) : error C2491: ‘__cuda_modf’ : definition of dllimport function not allowed

C:\MATLAB~1\BIN\NVMEX.PL: Error: Compile of ‘temp.cu’ failed.

??? Error using ==> nvmex at 206
Unable to complete successfully.


:no:

I added all the libraries I could find to the -L switch. What lib file deals with math_functions and what does it want from me…? Why does this problem occur only with -deviceemu and does not occur without it…?

Any assistance here will be greatly appreciated…

Thank you!

Y.

Hi,
I have the same problem with you.
Did you find any solution for that?
Your answer would be very helpful to me. Thanks.

Hi, look at my posting at http://forums.nvidia.com/index.php?showtopic=77684