yuxng / PoseCNN

A Convolutional Neural Network for 6D Object Pose Estimation in Cluttered Scenes
https://rse-lab.cs.washington.edu/projects/posecnn/
MIT License
761 stars 245 forks source link

ld cannot find -lkfusion #28

Closed TotoLulu94 closed 6 years ago

TotoLulu94 commented 6 years ago

Hi, When I Run make into the build directory, I got this issue :

[ 50%] Linking CXX shared library libsynthesizer.so
/usr/bin/ld: cannot find -lkfusion
collect2: error: ld returned 1 exit status
CMakeFiles/synthesizer.dir/build.make:417: recipe for target 'libsynthesizer.so' failed
make[2]: *** [libsynthesizer.so] Error 1
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/synthesizer.dir/all' failed
make[1]: *** [CMakeFiles/synthesizer.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2

So I guess I have to build and compile the directory "kinect_fusion" in $ROOT/lib. but then, I receive this error:

[  1%] Building NVCC (Device) object CMakeFiles/kinectFusion.dir/src/voxel/kinectFusion_generated_voxelGrid.cu.o
#$ _SPACE_= 
#$ _CUDART_=cudart
#$ _HERE_=/usr/local/cuda-9.0/bin
#$ _THERE_=/usr/local/cuda-9.0/bin
#$ _TARGET_SIZE_=
#$ _TARGET_DIR_=
#$ _TARGET_DIR_=targets/x86_64-linux
#$ TOP=/usr/local/cuda-9.0/bin/..
#$ NVVMIR_LIBRARY_DIR=/usr/local/cuda-9.0/bin/../nvvm/libdevice
#$ LD_LIBRARY_PATH=/usr/local/cuda-9.0/bin/../lib:
#$ PATH=/usr/local/cuda-9.0/bin/../open64/bin:/usr/local/cuda-9.0/bin/../nvvm/bin:/usr/local/cuda-9.0/bin:/home/thomas/anaconda3/envs/poseCNN/bin:/usr/local/cuda-8.0/bin:/home/thomas/bin:/home/thomas/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/local/cuda-8.0/bin:/home/thomas/anaconda3/bin
#$ INCLUDES="-I/usr/local/cuda-9.0/bin/../targets/x86_64-linux/include"  
#$ LIBRARIES=  "-L/usr/local/cuda-9.0/bin/../targets/x86_64-linux/lib/stubs" "-L/usr/local/cuda-9.0/bin/../targets/x86_64-linux/lib"
#$ CUDAFE_FLAGS=
#$ PTXAS_FLAGS=
#$ "/usr/bin"/cc -std=c++11 -D__CUDA_ARCH__=610 -E -x c++  -DCUDA_DOUBLE_MATH_FUNCTIONS -D__CUDACC__ -D__NVCC__ -D__CUDACC_EXTENDED_LAMBDA__ -D__CUDACC_RELAXED_CONSTEXPR__  "-O3" "-DNDEBUG" -fPIC -O3 -I"/usr/local/cuda-9.0/include" -I"/home/thomas/Desktop/PoseCNN-master/lib/kinect_fusion/include" -I"/usr/local/include/pangolin" -I"/usr/include/eigen3" -I"/usr/include/suitesparse" -I"/usr/local/include" -I"/usr/include" "-I/usr/local/cuda-9.0/bin/../targets/x86_64-linux/include"   -D"__CUDACC_VER_BUILD__=176" -D"__CUDACC_VER_MINOR__=0" -D"__CUDACC_VER_MAJOR__=9" -D"__CUDACC__" -D"COMPILE_DIR=\"/home/thomas/Desktop/PoseCNN-master/lib/kinect_fusion\"" -D"BUILD_POLY3" -D"BUILD_LINEAR" -D"NVCC" -include "cuda_runtime.h" -m64 "/home/thomas/Desktop/PoseCNN-master/lib/kinect_fusion/./src/voxel/voxelGrid.cu" > "/tmp/tmpxft_0000180e_00000000-4_voxelGrid.cpp1.ii" 
In file included from /usr/local/cuda-9.0/include/common_functions.h:50:0,
                 from /usr/local/cuda-9.0/include/cuda_runtime.h:115,
                 from <command-line>:0:
/usr/local/cuda-9.0/include/crt/common_functions.h:64:24: error: token ""__CUDACC_VER__ is no longer supported.  Use __CUDACC_VER_MAJOR__, __CUDACC_VER_MINOR__, and __CUDACC_VER_BUILD__ instead."" is not valid in preprocessor expressions
 #define __CUDACC_VER__ "__CUDACC_VER__ is no longer supported.  Use __CUDACC_VER_MAJOR__, __CUDACC_VER_MINOR__, and __CUDACC_VER_BUILD__ instead."
                        ^
/usr/include/eigen3/Eigen/src/Core/util/Macros.h:364:33: note: in expansion of macro ‘__CUDACC_VER__’
 #if defined(__CUDACC_VER__) &&  __CUDACC_VER__ >= 70500 && __cplusplus > 199711L
                                 ^
# --error 0x1 --
CMake Error at kinectFusion_generated_voxelGrid.cu.o.Release.cmake:219 (message):
  Error generating
  /home/thomas/Desktop/PoseCNN-master/lib/kinect_fusion/build/CMakeFiles/kinectFusion.dir/src/voxel/./kinectFusion_generated_voxelGrid.cu.o

CMakeFiles/kinectFusion.dir/build.make:10209: recipe for target 'CMakeFiles/kinectFusion.dir/src/voxel/kinectFusion_generated_voxelGrid.cu.o' failed
make[2]: *** [CMakeFiles/kinectFusion.dir/src/voxel/kinectFusion_generated_voxelGrid.cu.o] Error 1
CMakeFiles/Makefile2:67: recipe for target 'CMakeFiles/kinectFusion.dir/all' failed
make[1]: *** [CMakeFiles/kinectFusion.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2

Has anyone encounter this ?

I am using : Ubuntu 16.04 Cuda 9.0 Eigen3 : (3.3~beta1-2)

TotoLulu94 commented 6 years ago

I finally used Cuda 8.0 and it worked out great !

Santranx commented 6 years ago

hello, could you please tell me how to compile "kinect_fusion"?

iris0329 commented 5 years ago

in the kinect_fusion dir

mkdir build
cmake ..
make

@Santranx