On Tue, 2014-04-22 at 09:57 +0200, Neuer User wrote: > Hi > > Sorry for this simple question. I've just started building my first > image with yocto and would now like to add a (very simple) own recipe. > > I followed the Yocto Development guide, added my own layer and included > the "helloworld" example. > > Now I would like to exchange the helloworld.c code with a simple > gstreamer-rtsp server code > (http://cgit.freedesktop.org/gstreamer/gst-rtsp-server/tree/examples/test-launch.c). > > I changed the bb file as follows, adding expecially the DEPENDS: > > # > # This file was derived from the 'Hello World!' example recipe in the > # Yocto Project Development Manual. > # > > DESCRIPTION = "Simple helloworld application" > SECTION = "multimedia" > LICENSE = "MIT" > LIC_FILES_CHKSUM = > "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302" > PR = "r0" > > SRC_URI = "file://cameraserver.c" > > DEPENDS = "gst-rtsp gstreamer" > > S = "${WORKDIR}" > > do_compile() { > ${CC} cameraserver.c -o cameraserver > } > > do_install() { > install -d ${D}${bindir} > install -m 0755 cameraserver ${D}${bindir} > } > > > The package "gst-rtsp" is correctly built (as > libgstrtspserver-0.10-0-0.10.8-r0@cortexa9hf_vfp_neon), but the > compilation process of the "cameraserver.c" does not find the necessary > header include files. > > NOTE: recipe camera-server-0.1-r0: task do_compile: Started > Log data follows: > | DEBUG: Executing shell function do_compile > | cameraserver.c:20:21: fatal error: gst/gst.h: No such file or directory > | #include <gst/gst.h> > | ^ > | compilation terminated. > | WARNING: exit code 1 from a shell command. > | ERROR: Function failed: do_compile (log file is located at > /home/ubuntu/yocto/build/tmp/work/cortexa9hf-vfp-neon-poky-linux-gnueabi/camera-server/0.1-r0/temp/log.do_compile.26393) > NOTE: recipe camera-server-0.1-r0: task do_compile: Failed > > > The debug of bitbake shows, however, that it correctly identifies the > dependent packages: > > DEBUG: providers for gst-rtsp are: ['gst-rtsp'] > DEBUG: sorted runtime providers for gst-rtsp are: > ['/home/ubuntu/yocto/sources/meta-openembedded/meta-multimedia/recipes-multimedia/gstreamer/gst-rtsp_0.10.8.bb'] > DEBUG: adding > '/home/ubuntu/yocto/sources/meta-openembedded/meta-multimedia/recipes-multimedia/gstreamer/gst-rtsp_0.10.8.bb' > to satisfy runtime 'gst-rtsp' > DEBUG: providers for gstreamer are: ['gstreamer'] > DEBUG: sorted runtime providers for gstreamer are: > ['/home/ubuntu/yocto/sources/poky/meta/recipes-multimedia/gstreamer/gstreamer_0.10.36.bb'] > DEBUG: adding > '/home/ubuntu/yocto/sources/poky/meta/recipes-multimedia/gstreamer/gstreamer_0.10.36.bb' > to satisfy runtime 'gstreamer' > > > So, what am I doing wrong? Do I explicitly need to add the dependencies > to the compile environment somehow? If yes, where are the found > directories stored? > > Or am I doing this all very wrong? I am really very new to Yocto.
Basically, you need to pass in the correct compiler and linker flags. http://gstreamer.freedesktop.org/data/doc/gstreamer/head/faq/html/chapter-developing.html Adding: `pkg-config --cflags --libs gstreamer` to your compiler line will probably help. The system will automatically figure out things from there, the environment contains things that pkg-config can use to generate the correct options. Cheers, Richard -- _______________________________________________ yocto mailing list yocto@yoctoproject.org https://lists.yoctoproject.org/listinfo/yocto