This forum has been archived. All content is frozen. Please use KDE Discuss instead.

How to compile the .cu containing Eigen by mexcuda?

Tags: None
(comma "," separated)
zydxwpw
Registered Member
Posts
1
Karma
0
Hi all,

I'm using the mexcuda in Matlab to compile .cu containing eigen. I have downloaded the newest Eigen package, and I have copied the Eigen directory to the same directory of my .cu file.

But NVCC can't do that to a .cu like below:

mexcuda -I./ show.cu
Building with 'NVIDIA CUDA Compiler'. Error using mex show.cu

c:\users\desktop\a\eigen\src/Core/util/Meta.h(139): error: identifier "CUDART_MAX_NORMAL_F" is undefined c:\users\desktop\a\eigen\src/Core/util/Meta.h(148): error: identifier "CUDART_INF" is undefined c:\users\desktop\a\eigen\src/Core/products/Parallelizer.h(20): warning: variable "m_maxThreads" was set but never used c:\users\desktop\a\eigen\src/Core/ArrayWrapper.h(139): warning: __declspec attributes ignored c:\users\desktop\a\eigen\src/SVD/BDCSVD.h(325): error: declaration is incompatible with "void Eigen::BDCSVD<_MatrixType>::structured_update(Eigen::Block::Real, Eigen::Dynamic, Eigen::Dynamic, 0, Eigen::Dynamic, Eigen::Dynamic>, Eigen::Dynamic, Eigen::Dynamic, false>, const Eigen::BDCSVD<_MatrixType>::MatrixXr &, Eigen::SVDBase>::Index)" (172): here 3 errors detected in the compilation of "C:/Users/AppData/Local/Temp/tmpxft_00001fb4_00000000-14_show.compute_50.cpp1.ii".

Error in mexcuda (line 157) [varargout{1:nargout}] = mex(mexArguments{:});

As a comparison, VS can compile the cpp with Eigen in correctly like below:

mex -I./ show.cpp
Building with 'Microsoft Visual C++ 2013 Professional'. MEX completed successfully.

Can anyone help me? thanks!!


Bookmarks



Who is online

Registered users: Bing [Bot], Google [Bot], q.ignora, watchstar