Я пытаюсь скомпилировать пользовательское приложение gstreamer в peta linux со следующими заголовочными файлами:
#include <stdlib.h>
#include <string.h>
#include <gst/gst.h>
#include <gio/gio.h>
В проекте peta linux уже есть источники библиотеки sys root, заполненные после запустите:
petalinux-build --sdk
petalinux-package --sysroot
Но при компиляции приложения (peta linux -build - c myapp) я получил следующую ошибку:
| myapp.c:25:10: fatal error: gst/gst.h: No such file or directory
| #include <gst/gst.h>
| ^~~~~~~~~~~
| compilation terminated.
Файл make:
APP = myapp
# Add any other object files to this list below
APP_OBJS = myapp.o
all: build
build: $(APP)
$(APP): $(APP_OBJS)
$(CC) $(LDFLAGS) -o $@ $(APP_OBJS) $(LDLIBS)
clean:
-rm -f $(APP) *.elf *.gdb *.o
%.o : %.c
$(CC) -c $(CFLAGS) -o $@ $< $(shell pkg-config --cflags --libs gstreamer-1.0 glib-2.0)
И рецепт:
#
# This file is the myapp recipe.
#
SUMMARY = "Simple myapp application"
SECTION = "PETALINUX/apps"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
SRC_URI = "file://myapp .c \
file://Makefile \
"
S = "${WORKDIR}"
do_compile() {
oe_runmake
}
do_install() {
install -d ${D}${bindir}
install -m 0755 myapp ${D}${bindir}
У кого-нибудь есть идеи, что мне не хватает и как правильно добавить пути gstreamer для компиляции?
РЕДАКТИРОВАТЬ
Как и предполагалось, я добавил в рецепт строку DEPENDS:
#
# This file is the myapp recipe.
#
SUMMARY = "Simple myapp application"
SECTION = "PETALINUX/apps"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
SRC_URI = "file://myapp .c \
file://Makefile \
"
S = "${WORKDIR}"
DEPENDS = "glib-2.0 gstreamer1.0"
RDEPENDS_${PN} = "gstreamer1.0-plugins-base gstreamer1.0-plugins-good"
do_compile() {
oe_runmake
}
do_install() {
install -d ${D}${bindir}
install -m 0755 myapp ${D}${bindir}
Но, к сожалению, все еще выдает ту же ошибку ... какие-либо идеи, что может быть неправильным / отсутствующим?
Заранее спасибо.