0

我正在尝试在 yocto 中构建一个 opc-server 应用程序。为此,我首先构建了基本上可以工作的open62541库。
然后我想构建 opc-server 应用程序,但我无法成功构建它。问题是,在do_compile步骤中它引用了/usr/share/open62541/tools/...中的文件,但不幸的是找不到它。
然后我做了一些分析:我试图检查open62541ls -l /usr/share目录是否存在,但它也不可用。 然后我查看了我的食谱的 WORKDIR 以了解这些文件是否在recipe-sysroot中仍然可用,是的,它们在那里可用。

您知道在新创建的配方中找不到 /usr/share/open62541/xxx中的这些文件可能是什么问题吗?

配方:
这是 open62541 配方:这个配方基本上应该可以工作,因为我能够创建一个 rootfs 和一个包含所有构建文件的 SDK。

SUMMARY = "Open source implementation of OPC UA"
HOMEPAGE = "http://open62541.org/"
LICENSE = "MPL-2.0"

LIC_FILES_CHKSUM = "file://LICENSE;md5=815ca599c9df247a0c7f619bab123dad"

SRC_URI = "git://github.com/open62541/open62541.git;protocol=https;branch=${BRANCH} \
           git://github.com/OPCFoundation/UA-Nodeset.git;protocol=https;branch=v1.04;destsuffix=git/deps/ua-nodeset;name=ua-nodeset \
           git://github.com/Pro/mdnsd.git;protocol=https;branch=master;destsuffix=git/deps/mdnsd;name=mdnsd \
"


BRANCH = "master"
SRCREV = "ee9d90d7ae3b03478625a6a16443d136bbfe36f8"
SRCREV_ua-nodeset = "6ba93909d3c52ab17e7d1cbfb536fc24fa0717aa"
SRCREV_mdnsd = "3151afe5899dba5125dffa9f4cf3ae1fe2edc0f0"

SRCREV_FORMAT = "default"

PV = "1.2.2+git${SRCPV}"

inherit cmake python3native

DEPENDS += "python3-six-native"

S = "${WORKDIR}/git"

EXTRA_OECMAKE = "-DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_SHARED_LIBS=ON -DUA_ENABLE_DISCOVERY=ON -DUA_ENABLE_DISCOVERY_SEMAPHORE=ON -DUA_ENABLE_DISCOVERY_MULTICAST=ON"  


PACKAGECONFIG[ns0_full] = "-DUA_NAMESPACE_ZERO=FULL,,,"
PACKAGECONFIG ?= "ns0_full"

RDEPENDS_${PN} = "python3 perl"
RDEPENDS_${PN}-dev = "python3 perl"

BBCLASSEXTEND = "native nativesdk"

这是我个人食谱的一小部分。为了测试,我添加了 do_configure_prepend() 来列出 /usr/share 目录以检查是否包含 open62541 目录。DEPENDS += " open62541"我认为使用所有需要的文件就足够了。

inherit cmake python3-dir

DEPENDS += " open62541"
RDEPENDS_${PN} = "bash open62541"

S = "${WORKDIR}/git"
SRC_URI += "SOME LOCAL GIT REPO"

do_configure_prepend () {
    ls -l ${datadir}
}

do_compile () {
    ls -l ${datadir}
    oe_runmake
}

FILES_${PN} += " /usr/share/open62541 ${datadir}"
4

0 回答 0