[osg-users] Feedback/guidance sought on move of osgQt out into it's own project/repository

Robert Osfield robert.osfield at gmail.com
Sun Sep 18 03:40:08 PDT 2016

HI Mathieu,

On 18 September 2016 at 01:49, Mathieu MARACHE
<mathieu.marache at gmail.com> wrote:
> I cloned tom's attempt to reduce history :
> https://github.com/blobfish/osgQtCleaned01
> I'm now in the process of simplifying a bit some things, finding OT, OSG,
> etc.

I've just had a quick look at your osgQt repository, it still has lots
of commits.  I didn't see a separate repository cloned from Tom's.
Are there changes you haven't checked in?

> Something is still bothering me as OpenSceneGraph is not the only piece of
> software osgQt depends on, but also OpenThreads... And the needed
> OpenThreads is the one built on Qt's QThreads...
> OpenSceneGraph itself is agnostic of the threading library OT is built on.
> And it should, however OT is very aware :-)
> The only way I see removing Qt altogether from the OpenSceneGraph equation
> is to separate OpenThreads also, just like osgQt...

Part of the motivation of moving osgQt out of the core OSG was meant
to simplify things within the OSG, moving OpenThreads out is
technically possible by would add an external dependency to the OSG
that it hasn't had for a long time.

Personally I think we should avoid OpenThreads having any dependency
on Qt.  OpenThreads is a lightweight wrapper of native threading
libraries, it's not ever meant to be to be a wrapper of a large 3rd
party library that wraps the native libraries.

A solution where osgQt works correctly without requiring a Qt version
of OpenThreads would be the most sound technical solution.

One of the previous contributors to an OSG/Qt5 thread said he had
threading working robustly without the need for build OpenThreads
against Qt.  It would be worth chasing this up, I'm afraid I don't
recall the persons name though.  It think it was in a thread in the
past 6 months.

> I'm not sure how this would simplify linux distro package creators.

It would complicate linux distro's as they'd need to make a decision
about which OpenThreads to install - the one that wraps the native
threading library in a lightweight way or one that wraps Qt threading
that wraps native threading.  Adding a Qt dependency to an otherwise
small little library really isn't something you'd want to roll out to
all OpenSceneGraph applications that you might install want to have
part of a linux distribution.


More information about the osg-users mailing list