WPI-AIM/ambf

Ubuntu 20.04 Build Error

juseonghan opened this issue · 1 comments

Hello. I'm having issues with building AMBF on my Ubuntu 20.04 system. My CPU is Intel i9-13900K. This is my output when I run cmake ..

CMake Warning (dev) at /usr/share/cmake-3.16/Modules/FindOpenGL.cmake:275 (message):
  Policy CMP0072 is not set: FindOpenGL prefers GLVND by default when
  available.  Run "cmake --help-policy CMP0072" for policy details.  Use the
  cmake_policy command to set the policy and suppress this warning.

  FindOpenGL found both a legacy GL library:

    OPENGL_gl_LIBRARY: /usr/lib/x86_64-linux-gnu/libGL.so

  and GLVND libraries for OpenGL and GLX:

    OPENGL_opengl_LIBRARY: /usr/lib/x86_64-linux-gnu/libOpenGL.so
    OPENGL_glx_LIBRARY: /usr/lib/x86_64-linux-gnu/libGLX.so

  OpenGL_GL_PREFERENCE has not been set to "GLVND" or "LEGACY", so for
  compatibility with CMake 3.10 and below the legacy GL library will be used.
Call Stack (most recent call first):
  CMakeLists.txt:102 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Found Boost: /home/john-20/anaconda3/lib/cmake/Boost-1.73.0/BoostConfig.cmake (found version "1.73.0") found components: filesystem 
-- Using CATKIN_DEVEL_PREFIX: /home/john-20/ambf/build/devel
-- Using CMAKE_PREFIX_PATH: /home/john-20/ambf/build/devel;/opt/ros/noetic
-- This workspace overlays: /home/john-20/ambf/build/devel;/opt/ros/noetic
-- Found PythonInterp: /home/john-20/anaconda3/bin/python3 (found suitable version "3.11.5", minimum required is "3") 
-- Using PYTHON_EXECUTABLE: /home/john-20/anaconda3/bin/python3
-- Using Debian Python package layout
-- Using empy: /home/john-20/anaconda3/lib/python3.11/site-packages/em.py
-- Using CATKIN_ENABLE_TESTING: ON
-- Call enable_testing()
-- Using CATKIN_TEST_RESULTS_DIR: /home/john-20/ambf/build/test_results
-- Forcing gtest/gmock from source, though one was otherwise available.
-- Found gtest sources under '/usr/src/googletest': gtests will be built
-- Found gmock sources under '/usr/src/googletest': gmock will be built
-- Found PythonInterp: /home/john-20/anaconda3/bin/python3 (found version "3.11.5") 
-- Using Python nosetests: /usr/bin/nosetests3
-- catkin 0.8.10
-- BUILD_SHARED_LIBS is on
-- *** FOUND ROS ON THIS MACHINE, ENABLING SUPPORT FOR AMBF_ROS MODULES
-- Using these message generators: gencpp;geneus;genlisp;gennodejs;genpy
-- ambf_msgs: 16 messages, 0 services
-- Using these message generators: gencpp;geneus;genlisp;gennodejs;genpy
-- Using these message generators: gencpp;geneus;genlisp;gennodejs;genpy
-- Using these message generators: gencpp;geneus;genlisp;gennodejs;genpy
CMake Warning (dev) at external/tf_function/CMakeLists.txt:2 (project):
  Policy CMP0048 is not set: project() command manages VERSION variables.
  Run "cmake --help-policy CMP0048" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  The following variable(s) would be set to empty:

    PROJECT_VERSION
This warning is for project developers.  Use -Wno-dev to suppress it.

-- -- *** FOUND AMBF_COMM, AMBF_MSGS, AMBF_CLIENT and DVRK_ARM, ENABLING DVRK DEVICE SUPPORT
-- -- *** FOUND OPENCV
-- -- *** FOUND ROS_CV_BRIDGE and IMAGE_TRANSPORT, ENABLING VIDEO PUBLISHING SUPPORT
-- -- *** RAZER HYDRA'S ROS PACKAGE NOT FOUND
-- Found Boost: /home/john-20/anaconda3/lib/cmake/Boost-1.73.0/BoostConfig.cmake (found version "1.73.0") found components: program_options 
-- Configuring done
-- Generating done
-- Build files have been written to: /home/john-20/ambf/build

After I run make -j8 I get the following result

[  0%] Built target roscpp_generate_messages_nodejs
[  0%] Built target sensor_msgs_generate_messages_cpp
[  0%] Built target rosgraph_msgs_generate_messages_eus
[  0%] Built target std_msgs_generate_messages_eus
[  0%] Built target roscpp_generate_messages_cpp
[  0%] Built target adf_loader
[  0%] Built target roscpp_generate_messages_py
[  0%] Built target rosgraph_msgs_generate_messages_py
[  0%] Built target rosgraph_msgs_generate_messages_lisp
[  0%] Built target std_msgs_generate_messages_lisp
[  0%] Built target roscpp_generate_messages_lisp
[  0%] Built target rosgraph_msgs_generate_messages_nodejs
[ 24%] Built target bullet
[ 24%] Built target std_msgs_generate_messages_nodejs
[ 24%] Built target rosgraph_msgs_generate_messages_cpp
[ 24%] Built target roscpp_generate_messages_eus
[ 24%] Built target std_msgs_generate_messages_cpp
[ 24%] Built target std_msgs_generate_messages_py
[ 24%] Built target geometry_msgs_generate_messages_nodejs
[ 24%] Built target geometry_msgs_generate_messages_eus
[ 24%] Built target _ambf_msgs_generate_messages_check_deps_SensorCmd
[ 24%] Built target _ambf_msgs_generate_messages_check_deps_LightCmd
[ 24%] Built target _ambf_msgs_generate_messages_check_deps_ActuatorCmd
[ 24%] Built target _ambf_msgs_generate_messages_check_deps_WorldCmd
[ 24%] Built target _ambf_msgs_generate_messages_check_deps_SensorState
[ 24%] Built target _ambf_msgs_generate_messages_check_deps_VehicleState
[ 24%] Built target _ambf_msgs_generate_messages_check_deps_CameraState
[ 24%] Built target _ambf_msgs_generate_messages_check_deps_RigidBodyCmd
[ 24%] Built target _ambf_msgs_generate_messages_check_deps_CameraCmd
[ 24%] Built target _ambf_msgs_generate_messages_check_deps_ActuatorState
[ 24%] Built target _ambf_msgs_generate_messages_check_deps_LightState
[ 24%] Built target _ambf_msgs_generate_messages_check_deps_RigidBodyState
[ 24%] Built target _ambf_msgs_generate_messages_check_deps_ObjectCmd
[ 24%] Built target _ambf_msgs_generate_messages_check_deps_VehicleCmd
[ 24%] Built target geometry_msgs_generate_messages_lisp
[ 24%] Built target geometry_msgs_generate_messages_cpp
[ 24%] Built target geometry_msgs_generate_messages_py
[ 24%] Built target sensor_msgs_generate_messages_eus
[ 24%] Built target sensor_msgs_generate_messages_py
[ 24%] Built target sensor_msgs_generate_messages_nodejs
[ 24%] Built target sensor_msgs_generate_messages_lisp
[ 24%] Built target tf2_msgs_generate_messages_eus
[ 24%] Built target actionlib_generate_messages_lisp
[ 24%] Built target actionlib_msgs_generate_messages_eus
[ 24%] Built target tf2_msgs_generate_messages_lisp
[ 24%] Built target tf_generate_messages_py
[ 24%] Built target tf_generate_messages_nodejs
[ 24%] Built target tf_generate_messages_cpp
[ 72%] Built target chai3d
[ 72%] Built target _ambf_msgs_generate_messages_check_deps_WorldState
[ 72%] Built target _ambf_msgs_generate_messages_check_deps_ObjectState
[ 72%] Built target actionlib_generate_messages_py
[ 72%] Built target actionlib_msgs_generate_messages_nodejs
[ 72%] Built target actionlib_generate_messages_nodejs
[ 72%] Built target actionlib_generate_messages_eus
[ 72%] Built target actionlib_msgs_generate_messages_cpp
[ 72%] Built target actionlib_msgs_generate_messages_lisp
[ 72%] Built target actionlib_generate_messages_cpp
[ 72%] Built target actionlib_msgs_generate_messages_py
[ 72%] Built target tf_generate_messages_eus
[ 72%] Built target tf2_msgs_generate_messages_cpp
[ 72%] Built target tf2_msgs_generate_messages_nodejs
[ 72%] Built target tf2_msgs_generate_messages_py
[ 72%] Built target tf_generate_messages_lisp
[ 73%] Built target interpolate_test
[ 75%] Built target glfw
[ 75%] Built target math_test
[ 77%] Built target ambf_msgs_generate_messages_lisp
[ 80%] Built target ambf_msgs_generate_messages_eus
[ 83%] Built target ambf_msgs_generate_messages_py
[ 83%] Built target loader_test
[ 85%] Built target ambf_msgs_generate_messages_nodejs
[ 87%] Built target ambf_msgs_generate_messages_cpp
[ 87%] Built target ambf_msgs_generate_messages
[ 88%] Built target dvrk_arm
[ 88%] Built target dvrk_arm_test
[ 90%] Built target ambf_framework
[ 93%] Built target ambf_server
[ 96%] Built target ambf_client_cpp
[ 98%] Built target psm_ik_test
[ 98%] Linking CXX executable ../../bin/lin-x86_64/ambf_simulator
[ 98%] Built target ecm_ik_test
[100%] Built target raven_controller
/usr/bin/ld: warning: libboost_filesystem.so.1.73.0, needed by ../libadf_loader.so, may conflict with libboost_filesystem.so.1.71.0
/usr/bin/ld: /lib/x86_64-linux-gnu/libp11-kit.so.0: undefined reference to `ffi_closure_alloc@LIBFFI_CLOSURE_7.0'
/usr/bin/ld: /lib/x86_64-linux-gnu/libp11-kit.so.0: undefined reference to `ffi_prep_closure_loc@LIBFFI_CLOSURE_7.0'
/usr/bin/ld: /lib/x86_64-linux-gnu/libp11-kit.so.0: undefined reference to `ffi_type_uint8@LIBFFI_BASE_7.0'
/usr/bin/ld: /lib/libgdal.so.26: undefined reference to `TIFFReadRGBATileExt@LIBTIFF_4.0'
/usr/bin/ld: /lib/x86_64-linux-gnu/libp11-kit.so.0: undefined reference to `ffi_prep_cif@LIBFFI_BASE_7.0'
/usr/bin/ld: /lib/libgdal.so.26: undefined reference to `TIFFReadRGBAStripExt@LIBTIFF_4.0'
/usr/bin/ld: /lib/x86_64-linux-gnu/libp11-kit.so.0: undefined reference to `ffi_type_pointer@LIBFFI_BASE_7.0'
/usr/bin/ld: /lib/x86_64-linux-gnu/libp11-kit.so.0: undefined reference to `ffi_type_uint64@LIBFFI_BASE_7.0'
collect2: error: ld returned 1 exit status
make[2]: *** [ambf_simulator/CMakeFiles/ambf_simulator.dir/build.make:303: ../bin/lin-x86_64/ambf_simulator] Error 1
make[1]: *** [CMakeFiles/Makefile2:3234: ambf_simulator/CMakeFiles/ambf_simulator.dir/all] Error 2
make: *** [Makefile:141: all] Error 2

After some searching, it seems like there's some issues with libffi.so versions and symbolic linking but I could not fix the issue. Any help would be appreciated. Thank you!

After I commented out my .bashrc conda initialization, everything was able to build properly. I will close the issue. Thanks nonetheless!