[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Help with Qwt and PyQt-Qwt, C++ symbols

Hi Dima



> Sorry, I wasn't clear. I do understand that you're trying to get

> PyQt-Qwt running, but I was hoping to get more detail about the failures

> you're seeing and/or the exact steps you're taking to build PyQt-Qwt.

> How exactly are you building it? The documentation is very sparse, and

> I'd rather not spend time figuring it out.



> Simply running ./configure.py silently invokes some X thing that expects

> me to click a few times, and then barfs. If I read the docs, I get this:


> $ QT_SELECT=qt4 python3 configure.py --qwt-incdir=/usr/include/qwt

> Error: Unable to import PyQt5.QtCore. Make sure PyQt5 is installed.

Qt4 is being removed from Debian so I will concentrate on Qt5. There are

more differences in the examples than I thought for the different libraries.


> What do I need to invoke? What packages do I need to have installed?

Dependencies in Debian:

pyqt5-dev pyqt5-dev-tools python3-pyqt5


Then run:

$ QT_SELECT=qt5 python3 configure.py --qwt-incdir=/usr/include/qwt

$ make

$ cp Qwt.so qt5examples/; cd qt5examples

$ python3 bode.py


I have fixed the wrapper a bit and reduced the size of the patch with only

minimum loss of functionality.

I have been tinkering with setting the virtual functions = 0 in the sip code.


With new reduced patch.

All examples work except barplot.py (no bars are shown). I get the error messages:

NotImplementedError: QwtPlotMultiBarChart.dataSize() is abstract and must be overridden
NotImplementedError: QwtPlotMultiBarChart.dataRect() is abstract and must be overridden
NotImplementedError: QwtPlotMultiBarChart.setRectOfInterest() is abstract and must be overridden

If I reduce the patch more, I get

Traceback (most recent call last):
 File "test.py", line 8, in <module>
   import Qwt
ImportError: /home/gudjon/project_git/PyQt-Qwt/qt5examples/Qwt.so: undefined symbol: _ZNK22QwtAbstractSeriesStore8dataSizeEv

I need to change the QwtSeriesStoreQPointF to a template class but I haven't found out how to do that.

I commented out QwtSeriesStoreQPointF as a subclass in qwt_plot_curve.sip and I am pretty sure that is

a problem but I cannot add it without breaking the compilation.


I hope this answers your questions.

I am very thankful if you are willing to help me but I think the progress is already good enough to take the question

to more PyQt and Qwt related forums.

The conclusion is that my patch is unacceptable even if it fixes all my problems :)





Reply to: