Search code examples
boostcmakeroscatkinboost-signals

How can I add boost_signalsConfig.cmake to my CMAKE_PREFIX_PATH


I'm running ROS-kinetic on Ubuntu 16.04 and I am trying to build two packages in a catkin workspace (lanelet2 & mrt_cmake_modules)

When I run Catkin_make in the workspace, I receive the following error:

CMake Error at /usr/local/lib/cmake/Boost-1.70.0/BoostConfig.cmake:95 (find_package):
  Could not find a package configuration file provided by "boost_signals"
  (requested version 1.70.0) with any of the following names:

    boost_signalsConfig.cmake
    boost_signals-config.cmake

  Add the installation prefix of "boost_signals" to CMAKE_PREFIX_PATH or set
  "boost_signals_DIR" to a directory containing one of the above files.  If
  "boost_signals" provides a separate development package or SDK, be sure it
  has been installed.
Call Stack (most recent call first):
  /usr/local/lib/cmake/Boost-1.70.0/BoostConfig.cmake:124 (boost_find_dependency)
  /usr/share/cmake-3.5/Modules/FindBoost.cmake:245 (find_package)
  mrt_cmake_modules/cmake/Modules/FindAutoDeps.cmake:120 (find_package)
  lanelet2/lanelet2_core/CMakeLists.txt:19 (find_package)


-- Configuring incomplete, errors occurred!

I do have the boost library installed (Version 1.58):

dpkg -s libboost-all-dev | grep 'Version'
Version: 1.58.0.1ubuntu1

I can't seem to find either boost_signalsConfig.cmake or boost_signals-config.cmake anywhere in my system so I can't add the path to CMAKE_PREFIX_PATH.

Could someone please tell me how to get these .cmake files so I can add them to my CMAK_PREFIX_PATH?


Solution

  • Thank you @Tsyvarev for pointing out the issue. After looking at my /usr/local/ directory, I saw that libboost 1.70 was still installed so I deleted all files related to libboost 1.70 in /usr/local/lib/ and /usr/local/include. Everything compiled fine after doing this.