未找到yocto SDK krogoth cmake FindBoost

未找到yocto SDK krogoth cmake FindBoost,sdk,cmake,yocto,Sdk,Cmake,Yocto,我试图在krogoth上的YoctoSDK和扩展环境中找到boost库(cmake) 默认的cmakefind\u find_package(Boost REQUIRED) 标准错误消息 找不到请求的Boost库。 找不到Boost头文件。请将BOOST_ROOT设置为ROOT 包含Boost或Boost_INCLUDEDIR的目录到包含 Boost的头球。 调用堆栈(最新调用优先): CMakeLists.txt:3(查找包) 下面是我的conf/local.conf中的一个片段 IMAG

我试图在krogoth上的YoctoSDK和扩展环境中找到boost库(cmake)

默认的cmakefind\u

find_package(Boost REQUIRED)
标准错误消息

找不到请求的Boost库。
找不到Boost头文件。请将BOOST_ROOT设置为ROOT
包含Boost或Boost_INCLUDEDIR的目录到包含
Boost的头球。
调用堆栈(最新调用优先):
CMakeLists.txt:3(查找包)

下面是我的conf/local.conf中的一个片段

IMAGE_INSTALL_append = " boost-dev"
IMAGE_INSTALL_append = " boost"
IMAGE_INSTALL_append = " kernel-devsrc"

MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS += "kernel-module-hello"
KERNEL_MODULE_AUTO_lOAD += "hello-md"

LCHAIN_HOST_TASK_append = "${SDK_EXTRA_TOOLS}" 
SDK_EXTRA_TOOLS = " nativesdk-cmake 
我正在使用本地的cmake

auke@xenialxerus:~/workspace/beaglebone dev/build$which cmake
/home/auke/workspace/beaglebone-dev/poky-sdk/tmp/sysroot/x86_64-linux/usr/bin/

自从我:

source environment-setup-cortexa8hf-neon-poky-linux-gnueabi
在中查找常用的标题:

find ./tmp/sysroots/beaglebone/usr/include/boost/
..
/tmp/sysroots/beaglebone/usr/include/boost/vmd/list/to_seq.hpp
./tmp/sysroots/beaglebone/usr/include/boost/vmd/list/to_tuple.hpp
./tmp/sysroots/beaglebone/usr/include/boost/vmd/to_list.hpp
./tmp/sysroots/beaglebone/usr/include/boost/vmd/empty.hpp
./tmp/sysroots/beaglebone/usr/include/boost/vmd/is_list.hpp
./tmp/sysroots/beaglebone/usr/include/boost/vmd/size.hpp
./tmp/sysroots/beaglebone/usr/include/boost/vmd/get_type.hpp
./tmp/sysroots/beaglebone/usr/include/boost/vmd/assert_is_identifier.hpp
./tmp/sysroots/beaglebone/usr/include/boost/vmd/is_number.hpp
..
就像二进制文件一样:

./tmp/sysroots/beaglebone/usr/lib/libboost_system-mt.a
./tmp/sysroots/beaglebone/usr/lib/libboost_iostreams.so.1.60.0
./tmp/sysroots/beaglebone/usr/lib/libboost_serialization-mt.a
./tmp/sysroots/beaglebone/usr/lib/libboost_date_time-mt.a
./tmp/sysroots/beaglebone/usr/lib/libboost_date_time.a
./tmp/sysroots/beaglebone/usr/lib/libboost_thread.so
./tmp/sysroots/beaglebone/usr/lib/libboost_signals-mt.a
./tmp/sysroots/beaglebone/usr/lib/libboost_date_time-mt.so
./tmp/sysroots/beaglebone/usr/lib/libboost_graph-mt.a
./tmp/sysroots/beaglebone/usr/lib/libboost_iostreams.so
./tmp/sysroots/beaglebone/usr/lib/libboost_regex.so
./tmp/sysroots/beaglebone/usr/lib/libboost_wserialization.so.1
有什么我可能忽略的吗

关于Auke

你应该使用
bitbake-c填充_sdk
根据您的图像生成sdk

作为查找和下载工具链安装程序的替代方法, 如果您有一个 生成目录:

*使用bitbake元工具链。此方法要求您仍然安装 通过分别安装和提取目标sysroot来删除它。对于 有关如何安装sysroot的信息,请参阅“提取 根文件系统”部分

*使用bitbake-c填充sdk。该方法具有重要的应用价值 与前一种方法相比的优势在于,它产生了一个工具链 包含与目标根目录匹配的系统根目录的安装程序 文件系统

另外,使用变量
工具链\u HOST\u TASK
添加更多包。

此变量列出OpenEmbedded生成系统在以下情况下使用的包: 构建一个SDK,其中包含一个交叉开发环境。这个 此变量指定的包是工具链集的一部分 在SDKMACHINE上运行,每个包通常应该具有 前缀“nativesdk-”。使用bitbake-c构建SDK时 填充_sdk时,将在此窗口中设置默认的包列表 变量,但您可以向列表中添加其他包

e、 g

你应该使用
bitbake-c填充_sdk
根据您的图像生成sdk

作为查找和下载工具链安装程序的替代方法, 如果您有一个 生成目录:

*使用bitbake元工具链。此方法要求您仍然安装 通过分别安装和提取目标sysroot来删除它。对于 有关如何安装sysroot的信息,请参阅“提取 根文件系统”部分

*使用bitbake-c填充sdk。该方法具有重要的应用价值 与前一种方法相比的优势在于,它产生了一个工具链 包含与目标根目录匹配的系统根目录的安装程序 文件系统

另外,使用变量
工具链\u HOST\u TASK
添加更多包。

此变量列出OpenEmbedded生成系统在以下情况下使用的包: 构建一个SDK,其中包含一个交叉开发环境。这个 此变量指定的包是工具链集的一部分 在SDKMACHINE上运行,每个包通常应该具有 前缀“nativesdk-”。使用bitbake-c构建SDK时 填充_sdk时,将在此窗口中设置默认的包列表 变量,但您可以向列表中添加其他包

e、 g


嗨,查尔斯,谢谢你的回复。我现在遇到的问题是,它在sysroot/x86_64-pokysdk-linux/usr/include文件夹中找到库,而不是tmp/sysroot/beaglebone。我错误地认为环境设置会为我配置这个。你能详细说明我对sdk的误解吗?Charles answer为sdk工作,而不是为eSDK工作。我看到了一些错误/可能是bug,并提交了bug报告。嗨,查尔斯,谢谢你的回复。我现在遇到的问题是,它在sysroot/x86_64-pokysdk-linux/usr/include文件夹中找到库,而不是tmp/sysroot/beaglebone。我错误地认为环境设置会为我配置这个。你能详细说明我对sdk的误解吗?Charles answer为sdk工作,而不是为eSDK工作。我看到了一些错误/可能是bug,并提交了一份bug报告。我使用bitbake core image minimal-c populate_sdk_ext生成了SDKI使用的bitbake core image minimal-c populate_sdk_ext生成sdk
TOOLCHAIN_HOST_TASK += “nativesdk-libqt5core-dev”