使用 cmake 的 Yocto 食谱找不到 git

hme*_*hme 2 recipe cmake mongodb openembedded yocto

我正在尝试为 mongo-cxx-driver ( https://github.com/mongodb/mongo-cxx-driver )构建一个配方。我有 libbson 和 mongo-c-driver 的工作配方,这是要求,但是当我尝试构建 mongo-cxx-driver 时,它在尝试克隆 git repo 时失败。

$ bitbake mongo-cxx-driver

| CMake Error at 
/home/hme/projects/platform/yocto/poky/build/tmp/work/core2-64-poky-linux/mongo-cxx-driver/3.1.3-r0/recipe-sysroot-native/usr/share/cmake-3.8/Modules/ExternalProject.cmake:1805 (message):
|   error: could not find git for clone of EP_mnmlstc_core
| Call Stack (most recent call first):
|   /home/hme/projects/platform/yocto/poky/build/tmp/work/core2-64-poky-linux/mongo-cxx-driver/3.1.3-r0/recipe-sysroot-native/usr/share/cmake-3.8/Modules/ExternalProject.cmake:2560 (_ep_add_download_command)
|   src/bsoncxx/third_party/CMakeLists.txt:19 (ExternalProject_Add)
| 
| 
| -- Configuring incomplete, errors occurred!
Run Code Online (Sandbox Code Playgroud)

食谱:

DESCRIPTION = "MongoDB C++ driver"
SECTION = "libs"
HOMEPAGE = "https://github.com/mongodb/mongo-cxx-driver"
LICENSE = "Apache-2.0"
DEPENDS = "libbson mongo-c-driver git-native"

inherit cmake pkgconfig

SRC_URI = "https://github.com/mongodb/mongo-cxx-driver/archive/r${PV}.tar.gz"

SRC_URI[md5sum] = "fd1ff0f9b2122225e3b402c2bae30427"
SRC_URI[sha256sum] = "cb1b371eb34e991b8bfac65146f862cd379aa8f7270c430e5f3d71d843245ed9"

LIC_FILES_CHKSUM = "file://LICENSE;md5=d2794c0df5b907fdace235a619d80314"

S = "${WORKDIR}/mongo-cxx-driver-r${PV}"
Run Code Online (Sandbox Code Playgroud)

如果我运行:

$ bitbake -c devshell mongo-cxx-driver
Run Code Online (Sandbox Code Playgroud)

并通过 devshell 手动构建,它工作得很好。

任何想法可能有什么问题?

Nay*_*yfe 6

您应该尝试添加:

OECMAKE_FIND_ROOT_PATH_MODE_PROGRAM = "BOTH"
Run Code Online (Sandbox Code Playgroud)

继承cmake到你的食谱