Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problems on .so file #67

Open
guanhuaw opened this issue Apr 20, 2018 · 2 comments
Open

Problems on .so file #67

guanhuaw opened this issue Apr 20, 2018 · 2 comments

Comments

@guanhuaw
Copy link

Hi~
I try to install this on Ubuntu 16.04,but always meet with this problem when running demo:

Invalid MEX-file
'/home/wanggh/gpuNUFFT/gpuNUFFT/@gpuNUFFT/private/mex_gpuNUFFT_precomp_f.mexa64':
Missing symbol
'_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7compareEPKc'
required by
'/home/wanggh/gpuNUFFT/CUDA/bin/libgpuNUFFT_f.so->/home/wanggh/gpuNUFFT/gpuNUFFT/@gpuNUFFT/private/mex_gpuNUFFT_precomp_f.mexa64'
Missing symbol
'_ZNKSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv'
required by
'/home/wanggh/gpuNUFFT/CUDA/bin/libgpuNUFFT_f.so->/home/wanggh/gpuNUFFT/gpuNUFFT/@gpuNUFFT/private/mex_gpuNUFFT_precomp_f.mexa64'
Missing symbol
'_ZNSt13runtime_errorC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE'
required by
'/home/wanggh/gpuNUFFT/CUDA/bin/libgpuNUFFT_f.so->/home/wanggh/gpuNUFFT/gpuNUFFT/@gpuNUFFT/private/mex_gpuNUFFT_precomp_f.mexa64'
Missing symbol
'_ZNSt16invalid_argumentC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE'
required by
'/home/wanggh/gpuNUFFT/CUDA/bin/libgpuNUFFT_f.so->/home/wanggh/gpuNUFFT/gpuNUFFT/@gpuNUFFT/private/mex_gpuNUFFT_precomp_f.mexa64'
Missing symbol
'ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1EPKcRKS3' required
by
'/home/wanggh/gpuNUFFT/CUDA/bin/libgpuNUFFT_f.so->/home/wanggh/gpuNUFFT/gpuNUFFT/@gpuNUFFT/private/mex_gpuNUFFT_precomp_f.mexa64'
Missing symbol '_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED1Ev'
required by
'/home/wanggh/gpuNUFFT/CUDA/bin/libgpuNUFFT_f.so->/home/wanggh/gpuNUFFT/gpuNUFFT/@gpuNUFFT/private/mex_gpuNUFFT_precomp_f.mexa64'
Missing symbol
'_ZNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEC1ERKNS_12basic_stringIcS2_S3_EESt13_Ios_Openmode'
required by
'/home/wanggh/gpuNUFFT/CUDA/bin/libgpuNUFFT_f.so->/home/wanggh/gpuNUFFT/gpuNUFFT/@gpuNUFFT/private/mex_gpuNUFFT_precomp_f.mexa64'
Missing symbol
'_ZNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev' required
by
'/home/wanggh/gpuNUFFT/CUDA/bin/libgpuNUFFT_f.so->/home/wanggh/gpuNUFFT/gpuNUFFT/@gpuNUFFT/private/mex_gpuNUFFT_precomp_f.mexa64'.

Error in gpuNUFFT (line 104)
[res.op.dataIndices,res.op.sectorDataCount,res.op.densSorted,res.op.coords,res.op.sectorCenters,res.op.sectorProcessingOrder,res.op.deapoFunction]
= mex_gpuNUFFT_precomp_f(single(k)',single(w)',res.op.params);

Error in cgsense_phantom_recon (line 34)
FT = gpuNUFFT(k',col(w(:,:,1)),osf,wg,sw,[N,N,nSl],[],true);

And I've tried cuda7.5/9.0/9.1. When compiling, this always happens
Building NVCC (Device) object src/gpu/coarse/CMakeFiles/gpuNUFFT_f.dir/__/gpuNUFFT_f_generated_precomp_kernels.cu.o
/home/wanggh/gpuNUFFT/CUDA/inc/precomp_utils.hpp(97): warning: calling a host function from a host device function is not allowed

/home/wanggh/gpuNUFFT/CUDA/inc/precomp_utils.hpp(108): warning: calling a host function from a host device function is not allowed

/home/wanggh/gpuNUFFT/CUDA/inc/precomp_utils.hpp(97): warning: calling a host function from a host device function is not allowed

/home/wanggh/gpuNUFFT/CUDA/inc/precomp_utils.hpp(108): warning: calling a host function from a host device function is not allowed

/home/wanggh/gpuNUFFT/CUDA/inc/precomp_utils.hpp(97): warning: calling a host function from a host device function is not allowed

/home/wanggh/gpuNUFFT/CUDA/inc/precomp_utils.hpp(108): warning: calling a host function from a host device function is not allowed

Basically I follow the tutorial on the video, and I dont know where the problem comes from. Thanks a lot!

@andyschwarzl
Copy link
Owner

Hi, I'm sorry for coming back late - are you still having issues?

@curtcorum
Copy link

The missing symbols are likely MATLAB/gcc related. Check the gcc compatibility recommendations with your version of MATLAB.
The warnings do not seem to be an issue and come up even in a working build.
It should build with Cuda 9.1, Ubuntu 16.04 (latest updates and default gcc) and MATLAB R2018b. Ironically MATLAB wants gcc 6.3 (non-standard for Ubuntu) but works with 5.4 at least for gpuNUFFT and some other in-house mexa64 builds.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants