| Summary: | gtk-demo fails to run for gtk-directfb image | ||
|---|---|---|---|
| Product: | [Build System, Metadata & Runtime] OE-Core | Reporter: | Yi Zhao <yi.zhao> |
| Component: | graphics | Assignee: | Constantin Musca <constantinx.musca> |
| Status: | VERIFIED NOTABUG | QA Contact: | |
| Severity: | normal | ||
| Priority: | Medium | CC: | corneliux.stoicescu, hongxu.jia, liang.li2, meta.mr.watcher, meta.watcher, Qi.Chen, ross.burton, sgw, yi.zhao |
| Version: | 1.4 | ||
| Target Milestone: | 1.4 | ||
| Hardware: | x86 | ||
| OS: | Multiple | ||
| Whiteboard: | c13e458b22ca1b870332540e0edbc1975c342c79 | ||
| OS type for building Yocto: | --- | Type of Regression: | --- |
| Verified: | Documentation change: | --- | |
Do other DirectFB apps work (not GTK+ ones?) How about other GTK+ apps? With the latest master branch: 53cc748b93e8af584557d6db5309c3e955182c5c , the gtk-directfb image can't build.
Steps:
#########
1. Add DISTRO_FEATURES = "alsa argp bluetooth ext2 irda largefile pcmcia usbgadget usbhost wifi xattr nfs zeroconf pci 3g gtk-directfb ${DISTRO_FEATURES_LIBC}" to conf/local.conf
2. Run bitbake core-image-gtk-directfb
#########
I got the following errors:
############
NOTE: Resolving any missing task queue dependencies
ERROR: Nothing PROVIDES 'directfb-native' (but virtual:native:/buildarea1/yzhao1/poky/meta/recipes-graphics/cairo/cairo_1.12.8.bb DEPENDS on or otherwise requires it)
NOTE: Runtime target 'gtk+' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['gtk+', 'pango', 'pango-native', 'cairo-native', 'directfb-native']
NOTE: Runtime target 'packagegroup-core-gtk-directfb' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['packagegroup-core-gtk-directfb', 'gtk+', 'pango', 'pango-native', 'cairo-native', 'directfb-native']
ERROR: Required build target 'core-image-gtk-directfb' has no buildable providers.
Missing or unbuildable dependency chain was: ['core-image-gtk-directfb', 'packagegroup-core-gtk-directfb', 'gtk+', 'pango', 'pango-native', 'cairo-native', 'directfb-native']
#############
(In reply to comment #2) > With the latest master branch: 53cc748b93e8af584557d6db5309c3e955182c5c , > the gtk-directfb image can't build. > > Steps: > ######### > 1. Add DISTRO_FEATURES = "alsa argp bluetooth ext2 irda largefile pcmcia > usbgadget usbhost wifi xattr nfs zeroconf pci 3g gtk-directfb > ${DISTRO_FEATURES_LIBC}" to conf/local.conf > 2. Run bitbake core-image-gtk-directfb > ######### > > I got the following errors: > ############ > NOTE: Resolving any missing task queue dependencies > ERROR: Nothing PROVIDES 'directfb-native' (but > virtual:native:/buildarea1/yzhao1/poky/meta/recipes-graphics/cairo/cairo_1. > 12.8.bb DEPENDS on or otherwise requires it) > NOTE: Runtime target 'gtk+' is unbuildable, removing... > Missing or unbuildable dependency chain was: ['gtk+', 'pango', > 'pango-native', 'cairo-native', 'directfb-native'] > NOTE: Runtime target 'packagegroup-core-gtk-directfb' is unbuildable, > removing... > Missing or unbuildable dependency chain was: > ['packagegroup-core-gtk-directfb', 'gtk+', 'pango', 'pango-native', > 'cairo-native', 'directfb-native'] > ERROR: Required build target 'core-image-gtk-directfb' has no buildable > providers. > Missing or unbuildable dependency chain was: ['core-image-gtk-directfb', > 'packagegroup-core-gtk-directfb', 'gtk+', 'pango', 'pango-native', > 'cairo-native', 'directfb-native'] > ############# This issue has been fixed. (commit 26bddbd41b774395a9af73fb659b8e8792e9c3ad) Cheers, Constantin (In reply to comment #0) > Tree/Branch: Poky/master > git commit: 90c0eb29f0b41e4ac2d3d17ebad7295c2ebdc02a > > Steps: > 1. Download poky source and prepare the build environment > 2. Set MACHINE to qemuarm in conf/local.conf > 3. Add the following line in conf/local.conf: > DISTRO_FEATURES = "alsa argp bluetooth ext2 irda largefile pcmcia > usbgadget usbhost wifi xattr nfs zeroconf pci 3g gtk-directfb > ${DISTRO_FEATURES_LIBC}" > 4. Run "bitbake core-image-gtk-directfb" to build a gtk-directfb image > 5. Boot up the gtk-directfb image and run "gtk-demo" command. > > The image can boot up. But when I run "gtk-demo" command it only launch a > blank screen and no widgets on it. It seems that directfb is not supported by gtk versions >= 2.18. The guys from mozzila for example noticed this and decided to remove directfb: "DirectFB is no longer supported by GTK 3 and apparently even in 2 the backend hasn't worked since 2.18. It's probably time we stripped the DirectFB code, but at least here don't make any effort to maintain support." ( https://bugzilla.mozilla.org/show_bug.cgi?id=627699 ). Also, the people from the gtk mailling list confirm this: - https://mail.gnome.org/archives/gtk-devel-list/2011-August/msg00037.html Because of this we are dropping gtk-directfb. Cheers, Constantin Patches sent to the mailing list for removing gtk-directfb and creating a simple directfb packagegroup/image. Cheers, Constantin Please also add an example similar to "gtk-demo" to replace it so we can test the new feature. See https://bugzilla.yoctoproject.org/tr_show_case.cgi?case_id=288 for more details about why we need that and how we used "gtk-demo". (In reply to comment #6) > Please also add an example similar to "gtk-demo" to replace it so we can > test the new feature. > > See https://bugzilla.yoctoproject.org/tr_show_case.cgi?case_id=288 for more > details about why we need that and how we used "gtk-demo". Patches merged. (commit c13e458b22ca1b870332540e0edbc1975c342c79) # Test case Action: 1. Download poky source and prepare the build environment 2. Set MACHINE to qemuarm in conf/local.conf 3. Remove "x11" from DISTRO_FEATURES in meta/conf/distro/include/default-distrovars.inc, use "directfb" instead of it: DISTRO_FEATURES ?= "alsa argp bluetooth ext2 irda largefile pcmcia usbgadget usbhost wifi xattr nfs zeroconf pci 3g directfb ${DISTRO_FEATURES_LIBC}" 4. Run "bitbake core-image-directfb" to build a directfb image 5. Boot up the directfb image and run "df_fire" command. Expected Results: The directfb image can be built out and the "df_fire" command can run without problems. Cheers, Constantin New test cases added as described: https://bugzilla.yoctoproject.org/tr_show_case.cgi?case_id=563 . Test case was introduced in the full pass pre-release and full pass post-release cycles and will be verified on the first occasion. Tested in master:8d6e55bf2192524bda84138b5356a2791adbbe61
Command df_fire results in a hang(black screen) in a qemu environment:
1. Download poky source and prepare the build environment
2. Set MACHINE to qemuarm in conf/local.conf
3. Remove "x11" from DISTRO_FEATURES in meta/conf/distro/include/default-distrovars.inc, use "directfb" instead of it:
DISTRO_FEATURES ?= "alsa argp bluetooth ext2 irda largefile pcmcia usbgadget usbhost wifi xattr nfs zeroconf pci 3g directfb ${DISTRO_FEATURES_LIBC}"
4. Run "bitbake core-image-directfb" to build a directfb image
5. Boot up the directfb image "runqemu qemuarm core-image-directfb" and run "df_fire" command.
Notice the image hangs with a black screen. The application can not be closed thus I can not attach any output.
mesa support for directfb has been disabled (commit fb2de94105934b65bf2b9af942e69c7ffe87d26e). That's why the test case is not valid anymore. We need to find another directfb demo app. Cheers, Constantin Verified in master:7d22ef28e64de06b6238d0ef9b664c0bee6efa46 core-image-directfb builds and boots successfully. Added a new bug for the demo app in order to test directfb inside the image: Bug 3958 |
Tree/Branch: Poky/master git commit: 90c0eb29f0b41e4ac2d3d17ebad7295c2ebdc02a Steps: 1. Download poky source and prepare the build environment 2. Set MACHINE to qemuarm in conf/local.conf 3. Add the following line in conf/local.conf: DISTRO_FEATURES = "alsa argp bluetooth ext2 irda largefile pcmcia usbgadget usbhost wifi xattr nfs zeroconf pci 3g gtk-directfb ${DISTRO_FEATURES_LIBC}" 4. Run "bitbake core-image-gtk-directfb" to build a gtk-directfb image 5. Boot up the gtk-directfb image and run "gtk-demo" command. The image can boot up. But when I run "gtk-demo" command it only launch a blank screen and no widgets on it.