Yocto 1.6工具链中没有libboost_log

The*_*ast 5 boost boost-logging boost-log yocto

我按照Daiane Angolini编写的教程安装了Yocto 1.6并运行bitbake来设置工具链.虽然我在$ SDKTARGETSYSROOT/usr/lib下看到了大多数boost库,但似乎没有libboost_log.a和libboost_log_setup.a.我相信这些是在Boost 1.55中引入的,Yocto 1.6已经升至1.55.他们不应该在那里,或者我做错了什么?

我的.../fsl-community-bsp/build/conf/local.conf:

BB_NUMBER_THREADS ?= "${@oe.utils.cpu_count()}"
PARALLEL_MAKE ?= "-j ${@oe.utils.cpu_count()}"
MACHINE ??= 'imx6qsabresd'
DISTRO ?= 'poky'
PACKAGE_CLASSES ?= "package_rpm"
EXTRA_IMAGE_FEATURES = "debug-tweaks tools-sdk"
USER_CLASSES ?= "buildstats image-mklibs image-prelink"
PATCHRESOLVE = "noop"
BB_DISKMON_DIRS = "\
STOPTASKS,${TMPDIR},1G,100K \
STOPTASKS,${DL_DIR},1G,100K \
STOPTASKS,${SSTATE_DIR},1G,100K \
ABORT,${TMPDIR},100M,1K \
ABORT,${DL_DIR},100M,1K \
ABORT,${SSTATE_DIR},100M,1K" 
PACKAGECONFIG_pn-qemu-native = "sdl"
PACKAGECONFIG_pn-nativesdk-qemu = "sdl"
ASSUME_PROVIDED += "libsdl-native"
CONF_VERSION = "1"

BB_NUMBER_THREADS = '1'
PARALLEL_MAKE = '-j 1'

DL_DIR ?= "${BSPDIR}/downloads/"
ACCEPT_FSL_EULA = ""


CORE_IMAGE_EXTRA_INSTALL += "boost"
Run Code Online (Sandbox Code Playgroud)

Ano*_*ous 5

正确的方法是扩展现有配方。实际上,您通常永远不会直接更改第三方配方。这意味着,您正在创建自己的“ recipes-support / boost /”文件夹,其中包含一个名为“ boost _%。bbappend”的文件。'%'表示升压版本不重要。'bbappend'表示您扩展现有的boost-recipe。该文件仅包含一行:

 BOOST_LIBS += " log"
Run Code Online (Sandbox Code Playgroud)


小智 1

为了添加日志库,您应该编辑 boost 配方文件。在示例中,您应该编辑 boost.inc。要添加日志、原子和 loace 库,请替换

BOOST_LIBS = "\ date_time \ filesystem \ graph \ iostreams \ program_options \ regex \ serialization \ signals \ system \ test \ thread \ "

BOOST_LIBS = "\
date_time \
filesystem \
graph \
iostreams \
program_options \
regex \
serialization \
signals \
system \
test \
thread \
log \
atomic \
locale
"
Run Code Online (Sandbox Code Playgroud)