RozDavid / LOL

LOL: Lidar-only Odometry and Localization in 3D point cloud maps
363 stars 94 forks source link

About the code compiling under ubuntu18 #18

Open PigletPh opened 3 years ago

PigletPh commented 3 years ago

The work is excellent.But I compiled the code,there were some problems(catkin build segmapper).My environment : cuda9.0+cudnn7.1+gcc4.8.5.

RozDavid commented 3 years ago

Hey @jiu876,

could you provide more details regarding the problem?

PigletPh commented 3 years ago

the error is /usr/include/boost/math/special_functions/zeta.hpp:873:3344: error: unable to find numeric literal operator ‘operator""Q’.

RozDavid commented 3 years ago

Could you try with more recent compiler version? After a bit of googling I found this error to be fixed by gcc-7

PigletPh commented 3 years ago

Could you try with more recent compiler version? After a bit of googling I found this error to be fixed by gcc-7

I have tried and I could't compile the tensorflow1.8 if used gcc-7.

RozDavid commented 3 years ago

Could you post your error message then for tensorflow failing with gcc-7? Your compiler version is pretty obsolete and I don't see any reason not to update.

Update: Just checked and the original TF 1.8 build instuction indeed says gcc 4.8. In case it doesn't work with 7, please try later TF version, e.g 1.15.0. I was testing only with Ubuntu 16, so not sure about the specific cross-package dependencies in your case, but it definitely should work.

PigletPh commented 3 years ago

Thanks.I re-built tensorflow 1.8.0 with the below command and re-installed. bazel build --config=opt --define framework_shared_object=true tensorflow:libtensorflow_cc.so

However, the only error happens. Can you guess what is the problem?

Thank you, 45130681-95384780-b1c4-11e8-8794-4e8fa3ee0120

RozDavid commented 3 years ago

This issue might be a solution for your problem

PigletPh commented 2 years ago

This issue might be a solution for your problem hi,I tried the method you mentioned, and the same undefined error was reported. Do you have a problem with my compilation steps? 1、 bazel build --config=opt --config=cuda --define framework_shared_object=true tensorflow:libtensorflow_cc.so (Modify the library file path) 2、catkin build tensorflow_ros_cpp -DFORCE_TF_PIP_SEARCH="OFF" -DFORCE_TF_BAZEL_SEARCH="ON" 3、catkin build segmapper The first two have been successfully compiled, only the last step still has problems.

RozDavid commented 2 years ago

I think you need to scroll a bit more in the thread to have the correct solution. The build command you referring to still had linking problems. have you copied the .cc file manually? Or can you check the referenced commit

PigletPh commented 2 years ago

I think you need to scroll a bit more in the thread to have the correct solution. The build command you referring to still had linking problems. have you copied the .cc file manually? Or can you check the referenced commit

I copy the file libtensorflow_framework.so into devel/lib,I don't understand which .cc file you are talking about

RozDavid commented 2 years ago

I don't have an Ubuntu 18 to test it myself, but please follow the thread carefully. You have to delete libtensorflow_framework.so* from devel/lib , while being on the correct commit. What I meant with the .cc file was the framework.cc. copying this into the devel folder could be also a solution that worked for them. Also, check this comment for installing possible missing packages.

PigletPh commented 2 years ago

the file framework.cc is in the ensorflow-r1.8/bazel-bin/tensorflow?But I can't find the file in it and how I can get it?Thanks!

RozDavid commented 2 years ago

Which commit are you on? You can try replacing the included package in this repo with a submodule pointing at 1df7740 and make a clean build with that without copying anything.

PigletPh commented 2 years ago

Which commit are you on? You can try replacing the included package in this repo with a submodule pointing at 1df7740 and make a clean build with that without copying anything.

I also have tried but the error is the same as before.The file framework.cc is still not found.The problem is confused me too long.