我有本地资源,而不是存档资源。 如果要构建这些源,如何编写bb文件?
ex)在此处输入代码
librarytest
- a.c
- b.c
- c.c
- librarytest.bb
- LICENSE
librarytest.bb文件。
SUMMARY = "Library test source"
SECTION = "misc"
LICENSE = "GPLv2"
BB_STRICT_CHECKSUM = "0"
PREBUILTLIBS_PATH = "${TOPDIR}/../prebuiltlibs"
FILESEXTRAPATHS_prepend := "${PREBUILTLIBS_PATH}"
LIC_FILES_CHKSUM = "file://LICENSE;md5=293ef69c4e88434d37a5ee577a5288cb"
SRC_URI = "file://${PREBUILTLIBS_PATH}/${PN}"
EXTRA_OEMAKE = "-e MAKEFLAGS="
# comment out MakeInclude in Makefile which sets build environment
# ignore strip to avoid yocto errors in stripping
do_fetch[noexec] = "1"`enter code here`
do_unpack[noexec] = "1"
... skip
答案 0 :(得分:0)
这是从本地源编译共享库的方法。您可以用类似的方式来编译测试应用程序。
SUMMARY = "Library test source"
SECTION = "misc"
LICENSE = "GPLv2"
BB_STRICT_CHECKSUM = "0"
PREBUILTLIBS_PATH = "${TOPDIR}/../prebuiltlibs"
FILESEXTRAPATHS_prepend := "${PREBUILTLIBS_PATH}:${THISDIR}"
LIC_FILES_CHKSUM = "file://LICENSE;md5=293ef69c4e88434d37a5ee577a5288cb"
SRC_URI = "
file://a.c \
file://b.c \
file://c.c \
"
EXTRA_OEMAKE = "-e MAKEFLAGS="
# comment out MakeInclude in Makefile which sets build environment
# ignore strip to avoid yocto errors in stripping
do_fetch[noexec] = "1"
do_unpack ()
{
cp ${WORKDIR}/a.c ${S}
cp ${WORKDIR}/b.c ${S}
cp ${WORKDIR}/c.c ${S}
}
do_compile ()
{
# Either run makefile or the gcc shell command to compile files
# oe_runmake
${CC} a.c b.c c.c -fPIC -shared -o libraryName.so
}
do_install ()
{
install -d ${D}${libdir}
install -m 0644 libraryName.so ${D}${libdir}
}