在 Ubuntu 16.04 上使用 boost 时出现 cmake 错误

在 Ubuntu 16.04 上使用 boost 时出现 cmake 错误
$ cmake --version
cmake version 3.5.1
CMake suite maintained and supported by Kitware (kitware.com/cmake).

$ uname -a    
Linux ubuntu-micslogs 4.4.0-72-generic #93-Ubuntu SMP Fri Mar 31 14:07:41 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

$ ls -ld /usr/include/boost    
drwxr-xr-x 103 root root 12288 Apr 11 14:27 /usr/include/boost

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

$ lsb_release -r    
Release:    16.04

我收到的警告和编译错误

$ export BOOST_ROOT="/usr/include" ; cmake -DCMAKE_TOOLCHAIN_FILE=foo bar   
CMake Warning at /usr/share/cmake-3.5/Modules/FindBoost.cmake:725 (message):

Imported targets not available for Boost version
Call Stack (most recent call first):
  /usr/share/cmake-3.5/Modules/FindBoost.cmake:763 (_Boost_COMPONENT_DEPENDENCIES)
  /usr/share/cmake-3.5/Modules/FindBoost.cmake:1332 (_Boost_MISSING_DEPENDENCIES)
  CMakeLists.txt:35 (find_package)


CMake Warning at /usr/share/cmake-3.5/Modules/FindBoost.cmake:725 (message):
  Imported targets not available for Boost version
Call Stack (most recent call first):
  /usr/share/cmake-3.5/Modules/FindBoost.cmake:763 (_Boost_COMPONENT_DEPENDENCIES)
  /usr/share/cmake-3.5/Modules/FindBoost.cmake:1332 (_Boost_MISSING_DEPENDENCIES)
  CMakeLists.txt:35 (find_package)


CMake Warning at /usr/share/cmake-3.5/Modules/FindBoost.cmake:725 (message):
  Imported targets not available for Boost version
Call Stack (most recent call first):
  /usr/share/cmake-3.5/Modules/FindBoost.cmake:763 (_Boost_COMPONENT_DEPENDENCIES)
  /usr/share/cmake-3.5/Modules/FindBoost.cmake:1332 (_Boost_MISSING_DEPENDENCIES)
  CMakeLists.txt:35 (find_package)


CMake Error at /usr/share/cmake-3.5/Modules/FindBoost.cmake:1677 (message):
  Unable to find the requested Boost libraries.

  Unable to find the Boost header files.  Please set BOOST_ROOT to the root
  directory containing Boost or BOOST_INCLUDEDIR to the directory containing
  Boost's headers.
Call Stack (most recent call first):
  CMakeLists.txt:35 (find_package)



Looking for Avro C++ headers and libraries
-- Checking for module 'avro-cpp'
--   No package 'avro-cpp' found
CMake Error at /usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:148 (message):
  Could NOT find Avro (missing: AVRO_LIBRARY AVRO_INCLUDE_DIR)
Call Stack (most recent call first):
  /usr/share/cmake-3.5/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE)
  FindAvro.cmake:83 (find_package_handle_standard_args)
  CMakeLists.txt:38 (find_package)


-- Configuring incomplete, errors occurred!
See also "abc/def/ghi/CMakeFiles/CMakeOutput.log".
See also "abc/def/ghi/CMakeFiles/CMakeError.log".

我该如何摆脱这些提升错误?

相关内容