libqt4-dev install pulls libegl1-mesa/libgles2-mesa, causing removal of libegl1-sgx-omap4/libgles2-sgx-omap4

Bug #847901 reported by Fathi Boudra
16
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Linaro Ubuntu
Fix Released
High
Ricardo Salveti

Bug Description

 Get images to reproduce:
$ wget http://snapshots.linaro.org/11.05-daily/linaro-ubuntu-desktop/20110824/1/images/tar/linaro-n-ubuntu-desktop-tar-20110824-1.tar.gz http://snapshots.linaro.org/11.05-daily/linaro-hwpacks/lt-panda-x11-base-natty/20110824/1/images/hwpack/hwpack_linaro-lt-panda-x11-base_20110824-1_armel_supported.tar.gz
$ sudo linaro-media-create --mmc /dev/mmcblk0 --dev panda --hwpack hwpack_linaro-lt-panda-x11-base_20110824-1_armel_supported.tar.gz --binary linaro-n-ubuntu-desktop-tar-20110824-1.tar.gz

 On the Panda board:
# apt-get install libqt4-dev

libqt4-dev pulls libegl1-mesa-dev/libgles2-mesa-dev, causing libegl1-sgx-omap4/libgles2-sgx-omap4 removal.

libqtgui4 depends on libegl1-mesa.
libqt4-opengl depends on libgles2-mesa/libegl1-mesa.

Package: libegl1-sgx-omap4
Replaces: libegl1-x11
Provides: libegl1-x11
Conflicts: libegl1-x11

Package: libgles2-sgx-omap4
Replaces: libgles2
Provides: libgles2
Conflicts: libgles2

A user expects to install libqt4-dev transparently, using SGX packages that provides EGL/ GL ES2 libraries.

Workaround:
$ sudo apt-get-install libqt4-dev
$ sudo apt-get install libegl1-sgx-omap4 libgles2-sgx-omap4

Fathi Boudra (fboudra)
Changed in linaro-ubuntu:
status: New → Confirmed
importance: Undecided → Medium
description: updated
description: updated
Revision history for this message
seraphym (seraphym) wrote :

Uh, could you please advise on the workaround, because when I do
$ sudo apt-get install libegl1-sgx-omap4 libgles2-sgx-omap4
it removes libgles2-mesa-dev and that removes libqt4-opengl-dev which means I can't build projects with QT & QGLWidget class? am I doing something wrong, or is this workaround only means you can build non QGLWidget projects?

Also could you please up the priority, this really is a bummer :(

Changed in linaro-ubuntu:
milestone: none → 11.09
assignee: nobody → Ricardo Salveti (rsalveti)
Revision history for this message
Marko Pellikka (eemapel) wrote :

Yes, this is a real annoyance. The only work-around I know is to build while having mesa stuff installed, and then install omap4 packages back and then run application. But assuming you want to change something and build again, you need mesa packages again, frustrating..

Revision history for this message
seraphym (seraphym) wrote :

that's what I was doing but after couple of reinstalls of packages got sick of it and switch to another task. Hope this issue gets resolved fast :(

Revision history for this message
Fathi Boudra (fboudra) wrote :

Re-assign to me. There's already enough work on Ricardo's plate.

Changed in linaro-ubuntu:
assignee: Ricardo Salveti (rsalveti) → Fathi Boudra (fboudra)
milestone: 11.09 → 11.10
importance: Medium → High
Fathi Boudra (fboudra)
Changed in linaro-ubuntu:
milestone: 11.10 → 11.11
Revision history for this message
Ricardo Salveti (rsalveti) wrote : Re: [Bug 847901] Re: libqt4-dev install pulls libegl1-mesa/libgles2-mesa, causing removal of libegl1-sgx-omap4/libgles2-sgx-omap4

On Wed, Sep 28, 2011 at 9:50 AM, Fathi Boudra <email address hidden> wrote:
> Re-assign to me. There's already enough work  on Ricardo's plate.

Thanks, did you check if this is still and issue with oneiric?

Revision history for this message
Jiandong Zheng (ezjd) wrote :

I tried and still see such pkg conflict.

After looking into related pkgs, found followings:
1) libqt4-dev only recommends libqt4-opengl-dev so that this shouldn't cause issue if installing w/o recommendation.

2) However, install libqt4-opengl-dev will face same issue because it depends on libgles2-dev while it is a virtual pkg provided by libgles2-sgx-omap4-dev and can't be installed automatically for some reasons.

3) Easier workaround is to install libgles2-sgx-omap4-dev manually, in linaro image. However, I suspect the dependence information from Linaro pkgs has issues regarding this though I can't figure out due to limited deb pkg experience.

Fathi Boudra (fboudra)
Changed in linaro-ubuntu:
milestone: 11.11 → 11.12
Revision history for this message
Jiandong Zheng (ezjd) wrote :

Another issue found with libgles2-sgx-omap4-dev as it lack of KHR/khrplatform.h, which will lead to build error when, for example, I built kdelibs with it.

The walkaround is to install libegl1-sgx-omap4-dev as well. However, as I view libgles to be dependence of libegl, I'd like to see this header file to be included in libgles2-sgx-omap4-dev instead.

Revision history for this message
Fathi Boudra (fboudra) wrote :

On 26 November 2011 22:38, Jiandong Zheng wrote:
> Another issue found with libgles2-sgx-omap4-dev as it lack of
> KHR/khrplatform.h, which will lead to build error when, for example, I
> built kdelibs with it.

please, fill a separate issue. thanks.

> The walkaround is to install libegl1-sgx-omap4-dev as well. However, as
> I view libgles to be dependence of libegl, I'd like to see this header
> file to be included in libgles2-sgx-omap4-dev instead.

Revision history for this message
Jiandong Zheng (ezjd) wrote :

> please, fill a separate issue. thanks.

Bug #897429 created.

Revision history for this message
Ricardo Salveti (rsalveti) wrote :

Fathi, any update on this one?

Fathi Boudra (fboudra)
Changed in linaro-ubuntu:
milestone: 11.12 → 12.01
Revision history for this message
Jiandong Zheng (ezjd) wrote :

Still seeing this issue when installing kdelibs5-dev. The workaround I did still works too.

libqt4-opengl-dev will pull in libgles2-dev, a virtual pkg provided by both libgles2-mesa-dev and libgles2-sgx-omap4-dev.

Package: libgles2
State: not a real package
Provided by: libgles2-mesa, libgles2-sgx-omap4

I suspect when system always tries to install libgles2-mesa instead of the other to solve the dependencies. According to http://www.debian.org/doc/manuals/debian-faq/ch-pkg_basics.html (section 7.8), update-alternatives might be the solution, but couldn't figure out how.

Revision history for this message
Ricardo Salveti (rsalveti) wrote :

The problem is that with current solution, even with the generic packages working with replaces, mesa will always have the preference by dpkg (as it's the first package at 'or' list).

The workaround I'd also suggest for you is to install the -dev packages from SGX, so it can replace the mesa one, making the applications to also use the SGX -dev packages.

For the ideal solution, guess the way to go would be changing for update-alternatives, but that would require changes at mesa and also the sgx library (not that trivial).

Changed in linaro-ubuntu:
milestone: 12.01 → none
Revision history for this message
Marko Pellikka (eemapel) wrote :

I haven't got a chance to test this, but qt-x11 (4:4.7.4-1ubuntu1 and 4:4.8.0-1ubuntu1~ppa1) have some dependency fixes for opengl and qt dev packages. If anyone could check if the work-around is still required on latest images?

Revision history for this message
Ricardo Salveti (rsalveti) wrote :

This will get fixed right when we change officially to Precise (during 12.04), as I'll be replacing the current sgx driver with the one using update-alternatives (https://launchpad.net/~rsalveti/+archive/pvr-sgx-omap4).

With update-alternatives the main -dev package will be provided by the mesa packages, and you'll be able to install both at the same time.

Changed in linaro-ubuntu:
assignee: Fathi Boudra (fboudra) → Ricardo Salveti (rsalveti)
milestone: none → 12.04
Revision history for this message
Ricardo Salveti (rsalveti) wrote :

With the precise based rootfs this is not an issue any more, as the pvr driver is now using update-alternatives.

Changed in linaro-ubuntu:
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.