Closed wj4y78308 closed 6 years ago
Hi wj4y78308, and thanks for checking out the project!
I believe that the reason you are seeing the second error is because you are including a CUDA-specific implementation in a cpp file which should be platform-agnostic.
The first error looks like a compiler version mismatch. What version of g++ are you using, and what operating system are you on?
Thank you for replying me! I alreadly solved this problem :)
That's great to hear! Can you describe your solution briefly, in case someone else experiences a similar problem in the future? Thank you!
Hi, I want to use your project but I face some problems now, and I really need help. :(
/home/imlab-slam/DynSLAM-master/src/DynSLAM/InstRecLib/InstanceReconstructor.cpp: In member function ‘void instreclib::reconstruction::InstanceReconstructor::SaveObjectToMesh(int, const string&)’: /home/imlab-slam/DynSLAM-master/src/DynSLAM/InstRecLib/InstanceReconstructor.cpp:750:30: error: expected type-specifier before ‘ITMMeshingEngine_CUDA’ auto *meshing_engine = new ITMMeshingEngine_CUDA<ITMVoxel, ITMVoxelIndex> ( ^ /home/imlab-slam/DynSLAM-master/src/DynSLAM/InstRecLib/InstanceReconstructor.cpp:763:10: error: type ‘’ argument given to ‘delete’, expected pointer
delete meshing_engine;
^
make[2]: [CMakeFiles/InstRecLib.dir/InstanceReconstructor.cpp.o] Error 1
make[1]: [CMakeFiles/InstRecLib.dir/all] Error 2
make: *** [all] Error 2
I think the problem is that in InstanceReconstructor.cpp, there is no include related to ITMMeshingEngine_CUDA, so I just include it like this:
include ITMMeshingEngine_CUDA.h
and I also search for the solution... and found that terms related to CUDA(e.g. globlal in ITMMeshingEngine_CUDA.h) are not allowed in .cpp files, which is a compiler issue.
Because I am a beginner of CUDA, I really don't know how to solve this problem. Can anyone help me please? really thanks!