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

Error generating kfusion files #58

Open
nicole-antoine opened this issue May 22, 2018 · 11 comments
Open

Error generating kfusion files #58

nicole-antoine opened this issue May 22, 2018 · 11 comments

Comments

@nicole-antoine
Copy link

nicole-antoine commented May 22, 2018

Hello, I've been trying to build this project but I'm facing some issue that I'm not sure how I could correct them, like:

[ 21%] Built target apidoc
Segmentation fault (core dumped)
Segmentation fault (core dumped)
Segmentation fault (core dumped)
CMake Error at kfusion_generated_tsdf_volume.cu.o.cmake:282 (message):
  Error generating file
  /home/vclab/dynamicfusion/build/kfusion/CMakeFiles/kfusion.dir/src/cuda/./kfusion_generated_tsdf_volume.cu.o


kfusion/CMakeFiles/kfusion.dir/build.make:989: recipe for target 'kfusion/CMakeFiles/kfusion.dir/src/cuda/kfusion_generated_tsdf_volume.cu.o' failed
make[2]: *** [kfusion/CMakeFiles/kfusion.dir/src/cuda/kfusion_generated_tsdf_volume.cu.o] Error 1
make[2]: *** Waiting for unfinished jobs....
CMake Error at kfusion_generated_proj_icp.cu.o.cmake:282 (message):
  Error generating file
  /home/vclab/dynamicfusion/build/kfusion/CMakeFiles/kfusion.dir/src/cuda/./kfusion_generated_proj_icp.cu.o


CMake Error at kfusion_generated_imgproc.cu.o.cmake:282 (message):
  Error generating file
  /home/vclab/dynamicfusion/build/kfusion/CMakeFiles/kfusion.dir/src/cuda/./kfusion_generated_imgproc.cu.o


kfusion/CMakeFiles/kfusion.dir/build.make:677: recipe for target 'kfusion/CMakeFiles/kfusion.dir/src/cuda/kfusion_generated_proj_icp.cu.o' failed
make[2]: *** [kfusion/CMakeFiles/kfusion.dir/src/cuda/kfusion_generated_proj_icp.cu.o] Error 1
kfusion/CMakeFiles/kfusion.dir/build.make:366: recipe for target 'kfusion/CMakeFiles/kfusion.dir/src/cuda/kfusion_generated_imgproc.cu.o' failed
make[2]: *** [kfusion/CMakeFiles/kfusion.dir/src/cuda/kfusion_generated_imgproc.cu.o] Error 1
CMakeFiles/Makefile2:154: recipe for target 'kfusion/CMakeFiles/kfusion.dir/all' failed
make[1]: *** [kfusion/CMakeFiles/kfusion.dir/all] Error 2
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2

I installed Cuda 9.2, and even though I couldn't find the 375.66 nvidia drivers in 'additional drivers', If i remember well when I tried to update nvidia-375 it displayed that it was up to date as drivers version 396.
I don't really know what to check now, I saw an old topic related to kinect lines in cmake to remove (#33) but I don't want to make any mistake so, if you have any idea why I can't build, it'd be a great help.
Thank you

@mihaibujanca
Copy link
Owner

Hi, apologies for the delay.

What host compiler (and version) are you using?

@YJonmo
Copy link

YJonmo commented Jun 11, 2018

Hi there,

I am facing the same issue:
I am using Ubuntu 16.04.

/home/yaqub/dynamicfusion/kfusion/src/warp_field.cpp:157:13: error: ‘struct ceres::Solver::Options’ has no member named ‘num_linear_solver_threads’
options.num_linear_solver_threads = 8;

/home/yaqub/dynamicfusion/deps/Opt/examples/external/mLib/include/../src/core-math/triangleIntersection.cpp:497:50: warning: backslash and newline separated by space
ADD(isectpoint0,diff,VTX0); \
^
kfusion/CMakeFiles/kfusion.dir/build.make:107: recipe for target 'kfusion/CMakeFiles/kfusion.dir/src/warp_field.cpp.o' failed
make[2]: *** [kfusion/CMakeFiles/kfusion.dir/src/warp_field.cpp.o] Error 1

/home/yaqub/dynamicfusion/kfusion/src/capture.cpp:105:49: warning: ISO C++ forbids converting a string constant to ‘char*’ [-Wwrite-strings]
sprintf ("%s, %s", license.strVendor, vendor);
^
CMakeFiles/Makefile2:85: recipe for target 'kfusion/CMakeFiles/kfusion.dir/all' failed
make[1]: *** [kfusion/CMakeFiles/kfusion.dir/all] Error 2
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2

NVIDIA Driver Version: 396.26
CUDA Cores: 512
Graphics Processor: GeForce 940MX

@YJonmo
Copy link

YJonmo commented Jun 14, 2018

In fact, everything goes well till the line before the last in build.sh (make -j4), where I get the errors that I mentioned above.

Commenting out 157th line in warp_field.cpp stops the error, but I don't think this is the solution for the error.

@mihaibujanca
Copy link
Owner

Hi @YJonmo,

Firstly, the two problems might generate the same error but are almost certainly unrelated.

Looks like it's coming from ceres, they have removed num_linear_solver_threads: See this commit: ceres-solver/ceres-solver@cfdc2af

I'll push a change soon, but all you need to do is replace num_linear_solver_threads with num_threads_used on that line. I might remove ceres as a dependency altogether in the future since CPU based optimisation will be way too slow anyway.
That being said, the project is in need of some serious cleanup and I wouldn't offer any guarantees that it will work in practice as of now.

@YJonmo
Copy link

YJonmo commented Jun 19, 2018

I did what you said and still it gives error when running make -j4.

Thanks

@mihaibujanca
Copy link
Owner

Is it the same error though?
Pretty sure the one with num_linear_solver_threads should be solved by the above

@YJonmo
Copy link

YJonmo commented Jun 20, 2018

Sorry I might have done something wrong, but here is the details I did:
in warp_field.cpp I replaced the num_linear_solver_threads with num_threads_used.
Then in ~/dynamicfusion/build difrectory I ran
cmake -DOpenCV_DIR=~/opencv/build -DBOOST_ROOT=~/boost_1_64_0/ -DOPENNI_INCLUDE_DIR=/usr/include/ni -DOpenCV_FOUND=TRUE ..
make -j4

but I got:
.
.
.
.../dynamicfusion/kfusion/src/warp_field.cpp:158:10: error: ‘struct ceres::Solver::Options’ has no member named ‘num_threads_used’
options.num_threads_used = 8;
.
.
.

@mihaibujanca
Copy link
Owner

My bad, apologies. It was just num_threads, not num_threads_used

@YJonmo
Copy link

YJonmo commented Jun 21, 2018

num_threads is already there, so commenting the num_threads_used should be the solution?

@mihaibujanca
Copy link
Owner

Yeah that should work.

@wine3603
Copy link

@mihaibujanca haha, thanks man, I should read to the bottom

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

4 participants