[Buildroot] CMake can't find Boost

Gareth Pye garethp at gpsatsys.com.au
Thu Apr 28 06:16:05 UTC 2016


Hi,

I've had a lot trouble convincing cmake that boost is available. I'm 
trying to add the UHD drivers to buildroot. We need it to connect up the 
USR B200 to our Odroid C1s.

My uhd.mk looks like:

################################################################################
#
# UHD driver for USRP hardware (ettus research)
#
################################################################################

UHD_VERSION = 003_009_001
UHD_SOURCE = /release_$(UHD_VERSION).tar.gz
UHD_SITE = https://github.com/EttusResearch/uhd/archive
UHD_INSTALL_STAGING = YES
UHD_INSTALL_TARGET = YES

UHD_CONF_OPTS += -DENABLE_EXAMPLES=OFF
UHD_CONF_OPTS += -DENABLE_USB=ON
UHD_CONF_OPTS += -DENABLE_MANUAL=OFF
UHD_CONF_OPTS += -DENABLE_DOXYGEN=OFF
UHD_CONF_OPTS += -DENABLE_UTILS=OFF
UHD_CONF_OPTS += -DENABLE_TESTS=OFF

UHD_CONF_OPTS += 
-Dtarget_link_libraries=/data/Build/buildroot/output/target/usr/lib/

UHD_CONF_OPTS += -DBoost_INCLUDE_DIR=../../../../output/build/boost-1.60.0
UHD_CONF_OPTS += 
-DBoost_LIBRARY_DIR=../../../../output/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/lib
UHD_CONF_OPTS += -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=BOTH

UHD_DEPENDENCIES = libglib2 host-pkgconf python-mako libusb boost
UHD_SUBDIR = host
UHD_SUPPORTS_IN_SOURCE_BUILD = NO

define UHD_PRE_CONFIGURE_FIXUP
           cp -r output/target/usr/lib/python2.7/site-packages/mako 
output/host/usr/lib/python2.7/site-packages/
endef
UHD_PRE_CONFIGURE_HOOKS += UHD_PRE_CONFIGURE_FIXUP

$(eval $(cmake-package))

And an attempt at building it looks like (full paste at: 
http://pastebin.com/eQmf0YW8):

<snip>
-- Could NOT find Boost
CMake Warning (dev) at CMakeLists.txt:221 (LINK_DIRECTORIES):
   This command specifies the relative path

../../../../output/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/lib

   as a link directory.

   Policy CMP0015 is not set: link_directories() treats paths relative 
to the
   source dir.  Run "cmake --help-policy CMP0015" for policy details.  
Use the
   cmake_policy command to set the policy and suppress this warning.
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Boost include directories: ../../../../output/build/boost-1.60.0
-- Boost library directories: 
../../../../output/host/usr/arm-buildroot-linux-gnueabihf/sysroot/usr/lib
-- Boost libraries:
-- Looking for log2
-- Looking for log2 - found
<snip>


The uhd.mk file is similar to what worked several months ago, but it 
appears I didn't event commit to my local repository correctly as trying 
to make that doesn't work either.

Should a cmake project using boost 'just work' & I should be complaining 
to the UHD guys or is there something I should be tweaking in buildroot?



More information about the buildroot mailing list