Among many classes that are successivle binded with PythonQt and accessible from python there are few that are binded but not accessible on Linux even though there are accessible on Windows.
For example there is a class called
ColadaReader that is derived from
QDialog and has default constructor.
On Windows this works as expected:
reader = qColadaPythonQt.qColadaReader()
but the same project compiled on any Ubuntu 20.04 or CentOS 7 produce an exception:
reader = qColadaAppPythonQt.qColadaReader()
Traceback (most recent call last):
File "<console>", line 1, in <module>
AttributeError: module 'qColadaAppPythonQt' has no attribute 'qColadaReader'
At the same time
qColadaReader works as expected from C++ side.
To investigate the problem I list the exported symbols:
nm -D qColadaAppPythonQt.so
As you can see there is
qColadaReader in the list.
Then I tried
ldd qColadaAppPythonQt shows that there are some dependecies:
but paths to them are written in
[LibraryPaths] section so they should be loaded. And as I said it works from C++ side.
I also tried to explicitly add a decorator for that class but that didn’t helped. I think the class is binded but cant be loaded.
I’m a little bit confused but maybe somebody experienced have ideas what may be the reason of that?