[Interest] Help with qt-gstreamer recipe?
Neuer User
auslands-kv at gmx.de
Mon May 19 10:57:18 CEST 2014
Hi
I need qt-gstreamer in my Qt5 app (because I am having problems with the
camera element).
I found a yocto recipe from Andrey Telepin and tried to modify it for
Qt5. It looks like this:
-----------------------------------------------------------------------
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=2d5025d4aa3495befef8f17206a5b0a1"
SECTION = "multimedia"
PR = "r0"
SRC_URI =
"http://gstreamer.freedesktop.org/src/qt-gstreamer/qt-gstreamer-0.10.3.tar.gz"
SRC_URI[md5sum] = "a5f73dfa50270a23a0b07af32304e162"
SRC_URI[sha256sum] =
"bfc4406bde003d9e2e9b7fb5d19c07349c304706ec5936160d988f28dac5dd78"
DEPENDS = "boost qtmultimedia gstreamer"
inherit cmake
do_configure() {
# Ensure we get the cmake configure and not qmake
cmake_do_configure
}
export EXTRA_OECMAKE = "-DQT_QMAKE_EXECUTABLE=${OE_QMAKE_QMAKE} \
-DQT_LRELEASE_EXECUTABLE=${OE_QMAKE_LRELEASE} \
-DQT_MOC_EXECUTABLE=${OE_QMAKE_MOC} \
-DQT_UIC_EXECUTABLE=${OE_QMAKE_UIC} \
-DQT_RCC_EXECUTABLE=${OE_QMAKE_RCC} \
-DQT_LIBRARY_DIR=${OE_QMAKE_LIBDIR_QT} \
-DQT_HEADERS_DIR=${OE_QMAKE_INCDIR_QT} \
-DQT_QTCORE_INCLUDE_DIR=${OE_QMAKE_INCDIR_QT}/QtCore \
-DQT_QTGUI_INCLUDE_DIR=${OE_QMAKE_INCDIR_QT}/QtGui \
-DQTGSTREAMER_EXAMPLES=ON \
-DQT_VERSION=5 \
-DUSE_GST_PLUGIN_DIR=ON \
-DUSE_QT_PLUGIN_DIR=ON \
"
-----------------------------------------------------------------------
I get the following error during configure:
-----------
| -- Using Qt5 (min: 5.0.0)
| CMake Error at
/home/ubuntu/yocto/build/tmp/sysroots/cubox-i/usr/lib/cmake/Qt5Core/Qt5CoreConfig.cmake:27
(message):
| The imported target "Qt5::Core" references the file
|
| "/qmake"
|
| but this file does not exist. Possible reasons include:
|
| * The file was deleted, renamed, or moved to another location.
|
| * An install or uninstall procedure did not complete successfully.
|
| * The installation package was faulty and contained
|
|
"/home/ubuntu/yocto/build/tmp/sysroots/cubox-i/usr/lib/cmake/Qt5Core/Qt5CoreConfigExtras.cmake"
|
| but not all the files it references.
|
| Call Stack (most recent call first):
|
/home/ubuntu/yocto/build/tmp/sysroots/cubox-i/usr/lib/cmake/Qt5Core/Qt5CoreConfigExtras.cmake:6
(_qt5_Core_check_file_exists)
|
/home/ubuntu/yocto/build/tmp/sysroots/cubox-i/usr/lib/cmake/Qt5Core/Qt5CoreConfig.cmake:140
(include)
| cmake/modules/FindQt4or5.cmake:69 (find_package)
| CMakeLists.txt:24 (find_package)
-------------
It seems that OE_QMAKE_PATH_EXTERNAL_HOST_BINS is not defined. I have no
idea, however, where and how it should be defined correctly.
There is a file recipes-devtools/cmake/cmake_2.8.12.2.bbappend in the
meta-qt5 layer, which seems to address this problem somehow:
----------------------------------------
# Ugly hack to work around undefined OE_QMAKE_PATH_EXTERNAL_HOST_BINS
variable
# and possibly missing qmake binary (qtbase-native can be removed from
sysroot
# e.g. in order to upgrade it, even when there is target qtbase)
#| -- Performing Test run_pic_test - Success
#| CMake Error at
tmp-eglibc/sysroots/qemuarm/usr/lib/cmake/Qt5Core/Qt5CoreConfig.cmake:27
(message):
#| The imported target "Qt5::Core" references the file
#|
#| "/qmake"
#|
#| but this file does not exist. Possible reasons include:
do_configure_prepend() {
sed -i 's/^find_package(Qt5Core QUIET)$/#find_package(Qt5Core
QUIET)/g' ${S}/Tests/RunCMake/CMakeLists.txt
sed -i 's/^find_package(Qt5Core REQUIRED)/#find_package(Qt5Core
REQUIRED)/g' ${S}/Tests/RunCMake/IncompatibleQt/IncompatibleQt.cmake
sed -i 's/^ find_package(Qt5Widgets REQUIRED)/#
find_package(Qt5Widgets REQUIRED)/g' ${S}/Tests/QtAutomoc/CMakeLists.txt
sed -i 's/^find_package(Qt5Core REQUIRED)/#find_package(Qt5Core
REQUIRED)/g' ${S}/Tests/Qt4And5Automoc/CMakeLists.txt
sed -i 's/^ find_package(Qt5Widgets QUIET NO_MODULE)/#
find_package(Qt5Widgets QUIET NO_MODULE)/g' ${S}/Tests/CMakeLists.txt
sed -i 's/^find_package(Qt5Widgets QUIET)/#find_package(Qt5Widgets
QUIET)/g' ${S}/Source/QtDialog/CMakeLists.txt
}
-------------------------------------------
Still, I have no idea how to fix the problem. Can anybody hint me into
the right direction?
Thanks a lot
Michael
More information about the Interest
mailing list