大家好,我不知道我应该在哪里问这个问题。 我在过去的 1 周尝试中被困住了。我正在尝试在基于 imx6 arm 的设备上使用 gstreamer 交叉编译 Qt 5.1.1 qtmultimedia 。这是我的配置文件:
#!/bin/sh
./configure —prefix=/tools/rootfs/usr/local/qt-5.1.1 -examplesdir /tools/rootfs/usr/local/qt-5.1.1/examples -verbose -opensource -confirm-license -make libs -make examples -device imx6
-device-option CROSS_COMPILE=
/opt/freescale/usr/local/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/fsl-linaro- toolchain/bin/arm-fsl-linux-gnueabi-
-no-pch -no-opengl -no-icu -no-xcb -no-c++11
-opengl es2
-eglfs
-compile-examples
-glib -gstreamer
这是我的qmake.conf:
include(../common/linux_device_pre.conf) ROOTFS=/tools/rootfs EGLFS_PLATFORM_HOOKS_SOURCES = $$PWD/qeglfshooks_imx6.cpp
QMAKE_INCDIR += $$ROOTFS/usr/include $$ROOTFS/usr/include/glib-2.0
$$ROOTFS/usr/include/glib-2.0/gio $$ROOTFS/usr/include/glib-2.0/glib
$$ROOTFS/usr/include/glib-2.0/gobject $$ROOTFS/usr/include/glib-2.0/include
$$ROOTFS/usr/include/gstreamer-0.10 $$ROOTFS/usr/include/libxml2
QMAKE_LIBDIR += $$ROOTFS/usr/lib
QMAKE_LIBS += -L/tools/rootfs/usr/lib -lgthread-2.0 -lgio-2.0 -lglib-2.0 - lgmodule-2.0 -lgobject-2.0 -lgstbase-0.10 -lgstcontroller-0.10 -lgstreamer-0.10
QMAKE_INCDIR_OPENGL_ES2+= $$ROOTFS/usr/include/GLES2
QMAKE_LIBDIR_OPENGL_ES2+= $$ROOTFS/usr/lib QMAKE_LIBS_EGL += -lEGL
QMAKE_LIBS_OPENGL_ES2 += -lGLESv2 -lEGL -lGAL
QMAKE_LIBS_OPENVG += -lOpenVG -lEGL -lGAL
QMAKE_LFLAGS += -Wl,-rpath-link,$$ROOTFS/usr/lib
IMX6_CFLAGS = -march=armv7-a -mfpu=neon -DLINUX=1 -DEGL_API_FB=1
IMX6_CFLAGS_RELEASE = -O2 $$IMX6_CFLAGS
QMAKE_CFLAGS_RELEASE += $$IMX6_CFLAGS_RELEASE
QMAKE_CXXFLAGS_RELEASE += $$IMX6_CFLAGS_RELEASE
QMAKE_CFLAGS_DEBUG += $$IMX6_CFLAG
QMAKE_CXXFLAGS_DEBUG += $$IMX6_CFLAGS include(../common/linux_device_post.conf) load(qt_config)
当我配置gstreamer时已启用。但它不是在构建多媒体。我去了Qt-everywhere-opensource-src-5.1.1,并制作了模块Qtmultimedia。安装后,我尝试在设备上运行我的应用程序。它说:Qt多媒体:默认服务提供者::requestService((: 找不到 – "org.qt-project.qt.mediaplayer">
根据QtMultimedia Config.log找不到软件包gStreamer-0.10。 之后尝试构建它导出PKG_CONFIG_PATH结果还是一样。任何人都可以帮我解决这个错误!
由于配置失败,导出软件包配置路径不正确:
导出PKG_CONFIG_DIR=export PKG_CONFIG_LIBDIR=${SYSROOT}/usr/lib/pkgconfig:${SYSROOT}/usr/share/pkgconfigexport PKG_CONFIG_SYSROOT_DIR=${SYSROOT}
重新配置和构建。