我正在尝试将 qwt 从 5.2.1 更新到 6.0.0 版本,但是当我编译我的程序时,我得到了一个错误列表。
请帮忙。

这是错误列表:

src/../include/../include/scalepicker.h:7:33: error: qwt_double_interval.h: No such file or directory
In file included from src/plot.cpp:13:
src/../include/qwt_plot_rescaler.h:14:29: error: qwt_double_rect.h: No such file or directory
In file included from src/../include/plot.h:9,
                 from src/plot.cpp:1:
src/../include/plotintervalcurve.h:28: error: expected ‘,’ or ‘...’ before ‘<’ token
src/../include/plotintervalcurve.h:28: error: ISO C++ forbids declaration of ‘QwtArray’ with no type
src/../include/plotintervalcurve.h:51: error: ‘QwtDoubleRect’ does not name a type
In file included from src/../include/../../../include/../Glass/include/glass.h:8,
                 from src/../include/../../../include/globGlass.h:5,
                 from src/../include/splinedata.h:6,
                 from src/../include/plot.h:10,
                 from src/plot.cpp:1:
src/../include/../../../include/../Glass/include/../../Utils/include/geometry.h:125: warning: unused parameter ‘a’
src/../include/../../../include/../Glass/include/../../Utils/include/geometry.h:125: warning: unused parameter ‘b’
In file included from src/../include/plot.h:10,
                 from src/plot.cpp:1:
src/../include/splinedata.h:36: error: ‘QwtDoubleInterval’ does not name a type
src/../include/splinedata.h:53: error: ‘QwtDoubleInterval’ does not name a type
src/../include/splinedata.h:54: error: ‘QwtDoubleInterval’ has not been declared
In file included from src/../include/plot.h:11,
                 from src/plot.cpp:1:
src/../include/../include/scalepicker.h:21: error: ‘QwtDoubleInterval’ has not been declared
In file included from src/plot.cpp:1:
src/../include/plot.h:37: error: ‘QwtDoubleInterval’ does not name a type
src/../include/plot.h:50: error: ISO C++ forbids declaration of ‘QwtArray’ with no type
src/../include/plot.h:50: error: expected ‘;’ before ‘<’ token
src/../include/plot.h:56: error: ‘QwtDoubleInterval’ has not been declared
In file included from src/plot.cpp:12:
src/../include/plotspectrogram.h:22: error: expected ‘,’ or ‘...’ before ‘&’ token
src/../include/plotspectrogram.h:22: error: ISO C++ forbids declaration of ‘QwtDoubleRect’ with no type
In file included from src/plot.cpp:13:
src/../include/qwt_plot_rescaler.h:96: error: expected ‘,’ or ‘...’ before ‘&’ token
src/../include/qwt_plot_rescaler.h:96: error: ISO C++ forbids declaration of ‘QwtDoubleInterval’ with no type
src/../include/qwt_plot_rescaler.h:97: error: ‘QwtDoubleInterval’ does not name a type
src/../include/qwt_plot_rescaler.h:113: error: ‘QwtDoubleInterval’ does not name a type
src/../include/qwt_plot_rescaler.h:116: error: ‘QwtDoubleInterval’ does not name a type
src/../include/qwt_plot_rescaler.h:121: error: ‘QwtDoubleInterval’ has not been declared
src/../include/qwt_plot_rescaler.h:124: error: ‘QwtDoubleInterval’ does not name a type
src/../include/qwt_plot_rescaler.h:125: error: ‘QwtDoubleInterval’ does not name a type
In file included from src/plot.cpp:14:
src/../include/spectrogramzoomer.h:24: error: expected ‘,’ or ‘...’ before ‘&’ token
src/../include/spectrogramzoomer.h:24: error: ISO C++ forbids declaration of ‘QwtDoubleRect’ with no type
src/../include/spectrogramzoomer.h:25: error: ‘virtual void SpectrogramZoomer::zoom(int)’ cannot be overloaded
src/../include/spectrogramzoomer.h:24: error: with ‘virtual void SpectrogramZoomer::zoom(int)’
src/../include/spectrogramzoomer.h:27: error: expected ‘,’ or ‘...’ before ‘&’ token
src/../include/spectrogramzoomer.h:27: error: ISO C++ forbids declaration of ‘QwtDoubleRect’ with no type
src/../include/spectrogramzoomer.h:28: error: ‘void SpectrogramZoomer::reallyZoom(int)’ cannot be overloaded
src/../include/spectrogramzoomer.h:27: error: with ‘void SpectrogramZoomer::reallyZoom(int)’
src/../include/spectrogramzoomer.h:31: error: expected ‘,’ or ‘...’ before ‘&’ token
src/../include/spectrogramzoomer.h:31: error: ISO C++ forbids declaration of ‘QwtDoubleRect’ with no type
src/../include/spectrogramzoomer.h:32: error: ‘void SpectrogramZoomer::requestZoom(int)’ cannot be overloaded
src/../include/spectrogramzoomer.h:31: error: with ‘void SpectrogramZoomer::requestZoom(int)’
src/../include/spectrogramzoomer.h:37: error: expected ‘,’ or ‘...’ before ‘&’ token
src/../include/spectrogramzoomer.h:37: error: ISO C++ forbids declaration of ‘QwtDoublePoint’ with no type
src/plot.cpp: In constructor ‘Plot::Plot(SplineData*, QwtText, bool, QWidget*)’:
src/plot.cpp:62: error: ‘class PlotSpectrogram’ has no member named ‘setConrecAttribute’
src/plot.cpp:76: error: no matching function for call to ‘PlotSpectrogram::setColorMap(QwtLinearColorMap&)’
/usr/local/qwt-6.0.0/lib/qwt.framework/Versions/6/Headers/qwt_plot_spectrogram.h:67: note: candidates are: void QwtPlotSpectrogram::setColorMap(QwtColorMap*)
src/plot.cpp:78: error: no matching function for call to ‘PlotSpectrogram::setColorMap(QwtLinearColorMap&)’
/usr/local/qwt-6.0.0/lib/qwt.framework/Versions/6/Headers/qwt_plot_spectrogram.h:67: note: candidates are: void QwtPlotSpectrogram::setColorMap(QwtColorMap*)
src/plot.cpp:81: error: no matching function for call to ‘PlotSpectrogram::setData(SplineData&)’
/usr/local/qwt-6.0.0/lib/qwt.framework/Versions/6/Headers/qwt_plot_spectrogram.h:63: note: candidates are: void QwtPlotSpectrogram::setData(QwtRasterData*)
src/plot.cpp:86: error: ‘QwtValueList’ was not declared in this scope
src/plot.cpp:86: error: expected `;' before ‘contourLevels’
src/plot.cpp:88: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:89: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:92: error: ‘contourLevels’ was not declared in this scope
src/plot.cpp:96: error: ‘contourLevels’ was not declared in this scope
src/plot.cpp:100: error: ‘contourLevels’ was not declared in this scope
src/plot.cpp:104: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:106: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:107: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:112: error: request for member ‘boundingRect’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:113: error: request for member ‘boundingRect’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:115: error: request for member ‘boundingRect’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:116: error: request for member ‘boundingRect’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:144: error: ‘class PointSaver’ has no member named ‘setSelectionFlags’
src/plot.cpp:144: error: ‘PointSelection’ is not a member of ‘QwtPicker’
src/plot.cpp:144: error: ‘ClickSelection’ is not a member of ‘QwtPicker’
src/plot.cpp: In member function ‘void Plot::update(Spline*)’:
src/plot.cpp:205: error: no matching function for call to ‘PlotSpectrogram::setData(SplineData&)’
/usr/local/qwt-6.0.0/lib/qwt.framework/Versions/6/Headers/qwt_plot_spectrogram.h:63: note: candidates are: void QwtPlotSpectrogram::setData(QwtRasterData*)
src/plot.cpp:208: error: ‘QwtValueList’ was not declared in this scope
src/plot.cpp:208: error: expected `;' before ‘contourLevels’
src/plot.cpp:209: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:210: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:214: error: ‘contourLevels’ was not declared in this scope
src/plot.cpp:218: error: ‘contourLevels’ was not declared in this scope
src/plot.cpp:222: error: ‘contourLevels’ was not declared in this scope
src/plot.cpp:224: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:228: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:229: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp: In member function ‘void Plot::update(Spline*, double)’:
src/plot.cpp:239: error: no matching function for call to ‘PlotSpectrogram::setData(SplineData&)’
/usr/local/qwt-6.0.0/lib/qwt.framework/Versions/6/Headers/qwt_plot_spectrogram.h:63: note: candidates are: void QwtPlotSpectrogram::setData(QwtRasterData*)
src/plot.cpp:242: error: ‘QwtValueList’ was not declared in this scope
src/plot.cpp:242: error: expected `;' before ‘contourLevels’
src/plot.cpp:243: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:244: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:248: error: ‘contourLevels’ was not declared in this scope
src/plot.cpp:252: error: ‘contourLevels’ was not declared in this scope
src/plot.cpp:256: error: ‘contourLevels’ was not declared in this scope
src/plot.cpp:258: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:262: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:263: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp: In member function ‘void Plot::update(Glass*)’:
src/plot.cpp:274: error: no matching function for call to ‘PlotSpectrogram::setData(SplineData&)’
/usr/local/qwt-6.0.0/lib/qwt.framework/Versions/6/Headers/qwt_plot_spectrogram.h:63: note: candidates are: void QwtPlotSpectrogram::setData(QwtRasterData*)
src/plot.cpp:277: error: ‘QwtValueList’ was not declared in this scope
src/plot.cpp:277: error: expected `;' before ‘contourLevels’
src/plot.cpp:278: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:279: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:283: error: ‘contourLevels’ was not declared in this scope
src/plot.cpp:287: error: ‘contourLevels’ was not declared in this scope
src/plot.cpp:292: error: ‘contourLevels’ was not declared in this scope
src/plot.cpp:294: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:298: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:299: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp: In member function ‘void Plot::update(Glass*, double)’:
src/plot.cpp:308: error: no matching function for call to ‘PlotSpectrogram::setData(SplineData&)’
/usr/local/qwt-6.0.0/lib/qwt.framework/Versions/6/Headers/qwt_plot_spectrogram.h:63: note: candidates are: void QwtPlotSpectrogram::setData(QwtRasterData*)
src/plot.cpp:311: error: ‘QwtValueList’ was not declared in this scope
src/plot.cpp:311: error: expected `;' before ‘contourLevels’
src/plot.cpp:312: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:313: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:317: error: ‘contourLevels’ was not declared in this scope
src/plot.cpp:321: error: ‘contourLevels’ was not declared in this scope
src/plot.cpp:326: error: ‘contourLevels’ was not declared in this scope
src/plot.cpp:328: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:332: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp:333: error: request for member ‘range’ in ‘((Plot*)this)->Plot::d_spectrogram->PlotSpectrogram::<anonymous>.QwtPlotSpectrogram::data()’, which is of non-class type ‘QwtRasterData*’
src/plot.cpp: At global scope:
src/plot.cpp:342: error: variable or field ‘update’ declared void
src/plot.cpp:342: error: ‘QwtDoubleInterval’ was not declared in this scope
src/plot.cpp:49: warning: ‘attachedL’ defined but not used
src/plot.cpp:50: warning: ‘attachedR’ defined but not used

最佳答案

QwtDoubleInterval、QwtDoubleRect、QwtValueList 和 QwtArray 在 Qwt 6 中已弃用。

它们仍然被定义,但在 qwt_compat.h 中被定义为别名/类型定义。

关于c++ - 将 qwt 从 5.2.1 更新到 6.0.0,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7091553/

10-13 03:00