graphic system opengl isn't built Reproducible: Always Actual Results: $ qtdemo -graphicssystem opengl Unable to load graphicssystem "opengl" Expected Results: built Portage 2.1.6.13 (default/linux/amd64/2008.0/desktop, gcc-4.3.4, glibc-2.9_p20081201-r2, 2.6.30.4-2 x86_64) ================================================================= System uname: Linux-2.6.30.4-2-x86_64-Intel-R-_Core-TM-2_Quad_CPU_Q6600_@_2.40GHz-with-gentoo-1.12.11.1 Timestamp of tree: Sun, 16 Aug 2009 01:45:01 +0000 ccache version 2.4 [enabled] app-shells/bash: 4.0_p28 dev-java/java-config: 2.1.8-r1 dev-lang/python: 2.6.2-r1, 3.1 dev-util/ccache: 2.4-r8 dev-util/cmake: 2.6.4-r2 sys-apps/baselayout: 1.12.11.1 sys-apps/sandbox: 2.0 sys-devel/autoconf: 2.63-r1 sys-devel/automake: 1.7.9-r1, 1.9.6-r2, 1.10.2, 1.11 sys-devel/binutils: 2.19.1-r1 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.6a virtual/os-headers: 2.6.30-r1 ACCEPT_KEYWORDS="amd64 ~amd64" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -pipe -fomit-frame-pointer" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config /var/bind" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/udev/rules.d" CXXFLAGS="-O2 -pipe -fomit-frame-pointer" DISTDIR="/mnt/distfiles" FEATURES="ccache distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch userpriv webrsync-gpg" LDFLAGS="-Wl,-O1 -s -Wl,--hash-style=both" LINGUAS="en" MAKEOPTS="-j 4" PKGDIR="/cache/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_EXTRA_OPTS="-z" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/cache" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="32bit 386 7zip X a52 aac accessibility acl acpi adns aiglx alsa amd64 ao apm asf avi bash-completion berkdb bitmap-fonts bluetooth branding bzip2 cairo cdr chm cli consolekit cracklib crypt css customlog dbus dri dts dv dvdr dvdread emboss emerald encode epoll evo faad ffmpeg fftw firefox flac ftp gdbm gif glibc-omitfp glitz glx gpm graphviz gs gtk2 gzip hddtemp iconv ipv6 ithreads java6 jpeg jpeg2k kde kdeenablefinal kdehiddenvisibility kqemu lame lcms libg++ libwww live lm_sensors logrotate lzma lzo mad matroska md5sum mikmod mmx mmxext moznocompose moznoirc moznomail mp3 mp4 mpeg mplayer mudflap multilib mysql ncurses network nodrm nptl nptlonly nsplugin ogg oggvorbis openal opengl openmp pam pch pcre pdf pdflib png ppds pppd qt qt3support qt4 quicktime readline reflection rtc sdl session slang sndfile spell spl sql sqlite sqlite3 srt sse sse2 ssl ssse3 startup-notification stream svg symlink sysfs theora threads threadsafe tiff truetype unicode usb v4l v4l2 vdpau vorbis webkit x264 xcb xcomposite xft xml xml2 xorg xrandr xv xvid zlib" ALSA_CARDS="virtuoso" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en" USERLAND="GNU" VIDEO_CARDS="nvidia" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS
Yes we know about this This is because we split qt-gui and qt-opengl modules so there are various linking issues. We 've tried many times in the past to make it work but we didnt make it @Qt team I propose to close it as WONTFIX unless someone is willing to give it another try soon
I don't think we can ignore this issue. Just leave the bug open, I may take a look when I'll have some spare time, but I cannot guarantee anything. Anyway this should really be fixed IMHO, even if that requires to incorporate qt-opengl in qt-gui.
(In reply to comment #2) > I don't think we can ignore this issue. Just leave the bug open I agree
(In reply to comment #2) even if that requires to incorporate > qt-opengl in qt-gui. > We tried that, it didnt work :)
I think I got it working :) I'll commit an updated qt-opengl ebuild to qting-edge later (yes, no need to merge qt-gui and qt-opengl)
(In reply to comment #5) > I'll commit an updated qt-opengl ebuild to qting-edge later (yes, no need to > merge qt-gui and qt-opengl) > Pushed. Note that the opengl graphicssystem is considered experimental by upstream, and indeed I could verify that it's quite ugly and extremely unstable.
Is anyone going to move qt-opengl-4.5.2-r1 to the tree?
moved to tree x11-libs/qt-opengl/qt-opengl-4.5.2-r1.ebuild thanks :)
This is not 100% fixed imho. We should add a new use flag on qt-gui in order to enable opengl graphics system by default. Davide, your proposal enables opengl by default right?The default should be the native engine. There should be a new use flag on qt-gui which will force qt-opengl to be build with opengl graphics system support. Same thing as raster use flag Qt-gui ebuild should have an additional control point like this use opengl && myconf="${myconf} -graphicssystem opengl" when qt-opengl module is built with opengl graphics system support
The opengl graphicssystem is always built in qt-opengl with Davide's patch. If a use flag is added to qt-gui it should just depend on qt-opengl and set the default -graphicssystem flag, but it should be named something other than 'opengl' to avoid confusion.
(In reply to comment #10) > [...] set the > default -graphicssystem flag, but it should be named something other than > 'opengl' to avoid confusion. You may want to make "raster" and "< opengl >" intuitively "link" with each other, so the user knows they both set the default graphics system. Maybe QT_DEFAULT_GRAPHICSSYSTEM=... or something like that.
Davide's patch builds the system but it doesn't set it as default (and it shouldn't, its not working very well). Considering the current state of this graphic system I recommend leaving it as is for now. Anyone wanting to test it can use --graphicsystem opengl. When things get a bit more stable, we can add a new use flag that will enable it by default for interested users (perhaps mutually exclusive useflags gfx-{opengl,raster}, backend-{opengl,raster} or something like that).
(In reply to comment #9) > This is not 100% fixed imho. We should add a new use flag on qt-gui in order to > enable opengl graphics system by default. Davide, your proposal enables opengl > by default right?The default should be the native engine. No, the default is unchanged. My patch just enables the building of the opengl backend as a plugin, installed in /usr/lib/qt4/plugins/graphicssystems/. The plugin is not loaded, unless the user specifies -graphicssystem opengl on the command line. > There should be a new > use flag on qt-gui which will force qt-opengl to be build with opengl graphics > system support. Same thing as raster use flag > As wired said, it's still very unstable, nobody should have it enabled by default IMHO. It's supposed to be improved in qt-4.6, so we can have a look at this again after 4.6 is released.
(In reply to comment #13) > As wired said, it's still very unstable, nobody should have it enabled by > default IMHO. It's supposed to be improved in qt-4.6, so we can have a look at > this again after 4.6 is released. > In any case we need to allow users to use it as default. It is not our responsibility to protect them against this. Raster backend is unstable as well but we allow our users to enable it by default. Same philosophy should apply on opengl as well. An additional warning ( same as the raster one ) should be enough :)
Have you actually tried it? The opengl graphicssystem usually crashes applications within seconds. Raster backend is very stable when compared to opengl. Furthermore raster is not considered experimental by upstream, in fact it's used by default on windows and also as a fallback when certain paint operations aren't implemented by the native backend.