Ich habe den Luxus, mit dem endlosen Fehler- und Warnparadies umzugehen, das OpenEmbedded ist. Gute Neuigkeiten sind, dass ich mit meinem Rezept endlich irgendwo hinkomme, aber ich stoße auf ein Problem, bei dem mein Rezept Include- und Bibliothekspfade von meinem Host-Rechner enthält. Dies ist, wie ich weiß, für die Cross-Compilation unsicher. Würde jemand von euch, nette Leute, schnell mein Rezept anschauen und mir sagen, ob ich etwas Dummes mache? Ich würde es sehr zu schätzen wissen, da ich mich so fühle als wäre ich ein kompletter Idiot.Yocto/OpenEmbedded Rezept Aufnahme von Bibliothekspfaden vom Host
Hier ist mein Rezept Openembedded:
#TODO fixup license type
#Built by Rob.
DESCRIPTION = "librem"
HOMEPAGE = ""
SECTION = "meta-miku"
DEPENDS = "zlib re"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
# This tells bitbake where to find the files we're providing on the local filesystem
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}-${PV}:"
S = "${WORKDIR}/rem-0.5.2"
INSANE_SKIP_${PN}-dev += "dev-elf"
#INSANE_SKIP_${PN} += "installed-vs-shipped"
SRC_URI = "https://github.com/creytiv/rem/archive/v0.5.2.tar.gz"
SRC_URI[md5sum] = "4d63ab174fb7957b6805fd0de6991fd2"
SRC_URI[sha256sum] = "cef1b29631a35926982502f0eecc0950d40d2585241d0598ff18e70e2dfcfcb6"
do_compile() {
oe_runmake ROOT=${STAGING_DIR_HOST} OFLAGS="--sysroot=${STAGING_DIR_HOST}"
}
do_install() {
oe_runmake install ROOT=${STAGING_DIR_HOST} OFLAGS="--sysroot=${STAGING_DIR_HOST}" DESTDIR=${D}${libdir}
install -d ${D}${libdir}/
install -m 0644 ${S}/librem.a ${D}${libdir}/librem.a
install -m 0644 ${S}/librem.so ${D}${libdir}/librem.so
install -d ${D}${libdir}/pkgconfig
install -m 0644 ${S}/librem.pc ${D}${libdir}/pkgconfig/librem.pc
}
Und hier meine Warnungen sind:
WARNING: rem-1.0-r0 do_package: QA Issue: rem: Files/directories were installed but not shipped in any package:
/usr/lib64/usr/include
/usr/lib64/usr/include/rem
/usr/lib64/usr/include/rem/rem_auconv.h
/usr/lib64/usr/include/rem/rem_fir.h
/usr/lib64/usr/include/rem/rem_aumix.h
/usr/lib64/usr/include/rem/rem_video.h
/usr/lib64/usr/include/rem/rem_audio.h
/usr/lib64/usr/include/rem/rem_vidconv.h
/usr/lib64/usr/include/rem/rem_dtmf.h
/usr/lib64/usr/include/rem/rem_aubuf.h
/usr/lib64/usr/include/rem/rem_au.h
/usr/lib64/usr/include/rem/rem_dsp.h
/usr/lib64/usr/include/rem/rem_vidmix.h
/usr/lib64/usr/include/rem/rem_vid.h
/usr/lib64/usr/include/rem/rem_goertzel.h
/usr/lib64/usr/include/rem/rem_auresamp.h
/usr/lib64/usr/include/rem/rem_autone.h
/usr/lib64/usr/include/rem/rem_g711.h
/usr/lib64/usr/include/rem/rem_aufile.h
/usr/lib64/usr/include/rem/rem.h
/usr/lib64/usr/lib/librem.a
/usr/lib64/usr/lib/librem.so
/usr/lib64/usr/lib/pkgconfig
/usr/lib64/usr/lib/pkgconfig/librem.pc
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
rem: 24 installed and not shipped files. [installed-vs-shipped]
WARNING: rem-1.0-r0 do_package_qa: QA Issue: rem: The compile log indicates that host include and/or library paths were used.
Please check the log '/media/rob/a72581e8-3ca3-4dc1-b3b8-6db5464de098/qc_openEmbedded/apps_proc/build/tmp-glibc/work/aarch64-linaro-linux/rem/1.0-r0/temp/log.do_compile' for more information. [compile-host-path]
WARNING: rem-1.0-r0 do_package_qa: QA Issue: No GNU_HASH in the elf binary: '/media/rob/a72581e8-3ca3-4dc1-b3b8-6db5464de098/qc_openEmbedded/apps_proc/build/tmp-glibc/work/aarch64-linaro-linux/rem/1.0-r0/packages-split/rem-dev/usr/lib64/librem.so' [ldflags]
NOTE: Tasks Summary: Attempted 420 tasks of which 407 didn't need to be rerun and all succeeded.
NOTE: Writing buildhistory
Summary: There were 4 WARNING messages shown.