Giter Site home page Giter Site logo

Comments (7)

rncbc avatar rncbc commented on September 15, 2024

On 09/25/2016 04:55 PM, Simon van der Veldt wrote:

Qtractor hard crashes when I add a plugin that (apparently) wants to
render it's UI using GTK. When enabling debugging I get the following
error message:

|suil error: Unable to open wrap module
/usr/lib64/suil-0/libsuil_gtk2_in_qt4.so
(/usr/lib64/suil-0/libsuil_gtk2_in_qt4.so: cannot open shared object
file: No such file or directory) |

This is easily solved by compiling suil with gtk support, but I do think
that Qtractor shouldn't crash when it can't find a lib. Is there a way
to prevent this?

libsuil_gtk2_in_qt4 object or specific package must be installed on your
system; it is part of suil, not of qtractor.

Also, there seem to be some checks to prevent these situations in
|configure.ac|
https://github.com/rncbc/qtractor/blob/master/configure.ac#L1251 but
these seem to explicitly only check when not using Qt4. That might be an
error?
(For reference: I'm running a Qt4 build)

yes, those checks are for an alternative to libsuil_gtk2_in_qt5, which
is only available on suil >= 0.8.4 but still no official announcement of
this latest suil release.

byee

rncbc aka. Rui Nuno Capela

from qtractor.

simonvanderveldt avatar simonvanderveldt commented on September 15, 2024

libsuil_gtk2_in_qt4 object or specific package must be installed on your
system; it is part of suil, not of qtractor.

Yeah, that's what I did, maybe I worded it in an unclear way. I recompiled libsuil with gtk enabled.
But I do feel that it shouldn't cause a segfault in Qtractor. I'm able to figure out what's happening by creating a debug build, but for people who know less about these things it's not really a good user experience.
Or is it impossible to catch these types of errors?

yes, those checks are for an alternative to libsuil_gtk2_in_qt5, which
is only available on suil >= 0.8.4 but still no official announcement of
this latest suil release.

Ah, I see. And that alternative is Qt5 specific?

from qtractor.

rncbc avatar rncbc commented on September 15, 2024

On 09/25/2016 08:13 PM, Simon van der Veldt wrote:

libsuil_gtk2_in_qt4 object or specific package must be installed on your
system; it is part of suil, not of qtractor.

Yeah, that's what I did, maybe I worded it in an unclear way. I
recompiled libsuil with gtk enabled.
But I do feel that it shouldn't cause a segfault in Qtractor. I'm able
to figure out what's happening by creating a debug build, but for people
who know less about these things it's not really a good user experience.
Or is it impossible to catch these types of errors?

afaict. it seems a packaging/install/deployment error: you have to
install ALL the objects or packages that were ganged on same libsuil
build. otherwise you get segfault/crashes due to missing installed
components (the API assumes is there, but on the file-system isn't).

yes, those checks are for an alternative to libsuil_gtk2_in_qt5, which
is only available on suil >= 0.8.4 but still no official announcement of
this latest suil release.

Ah, I see. And that alternative is Qt5 specific?

yes. exactly.

byee

rncbc aka. Rui Nuno Capela

from qtractor.

simonvanderveldt avatar simonvanderveldt commented on September 15, 2024

@rncbc I'm not sure I fully understand. Do you mean the build system for Qtractor does build-time checks if libraries exist/have certain feature enabled?
Because the libsuil I had and used to build Qtractor didn't have gtk enabled but the compiled Qtractor apparently still expected it to be there.

from qtractor.

rncbc avatar rncbc commented on September 15, 2024

Do you mean the build system for Qtractor does build-time checks if libraries exist/have certain feature enabled?

not that if libraries exist but it checks on the API with suil_ui_supported() call that tells whether some component wrapper or library was compiled in at libsuil.so build time, and is featured or supported (eg. libsuil_qtk2_in_qt4.so is there somewhere available.

however, it seems, that although it might tell it's supported (as it was built on a former time), it might not be actually deployed (installed) on the system and the missing is only evident at runtime, when the host (qtractor) goes into actually show up a plugin's GtkUI and is greeted with a crash (eg. libsuil_gtk2_in_qt4.so not found).

byee

rncbc aka. Rui Nuno Capela

from qtractor.

simonvanderveldt avatar simonvanderveldt commented on September 15, 2024

yes, those checks are for an alternative to libsuil_gtk2_in_qt5, which
is only available on suil >= 0.8.4 but still no official announcement of
this latest suil release.

There has been a release of suil 0.10.0 now :)
Is there anything needed to use this or will it just work by updating suil and rebuilding Qtractor?

not that if libraries exist but it checks on the API with suil_ui_supported() call that tells whether some component wrapper or library was compiled in at libsuil.so build time, and is featured or supported (eg. libsuil_qtk2_in_qt4.so is there somewhere available.

however, it seems, that although it might tell it's supported (as it was built on a former time), it might not be actually deployed (installed) on the system and the missing is only evident at runtime, when the host (qtractor) goes into actually show up a plugin's GtkUI and is greeted with a crash (eg. libsuil_gtk2_in_qt4.so not found).

It seems this isn't working as it should because the libsuil I had installed didn't have the gtk2 in Qt4 support enabled, yet I was still allowed to add GTK based plugins from within Qtractor causing the crash.

from qtractor.

rncbc avatar rncbc commented on September 15, 2024

unless you're using kxstudio repos--which tend to use libsuil-static and thus qtractor must also get updated--you're all fine to deploy libsuil 0.10.0 and go.

byee

from qtractor.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.