OpenHantek / openhantek

OpenHantek is a DSO software for Hantek (Voltcraft/Darkwire/Protek/Acetech) USB digital signal oscilloscopes
http://openhantek.org/
GNU General Public License v3.0
757 stars 200 forks source link

memleak. compile hangs at qrc_firmwares.cpp.o #303

Open milahu opened 4 years ago

milahu commented 4 years ago

version = git eb33325

this command runs for 2 hours, and needs 100% cpu and endless ram

[ 98%] Building CXX object openhantek/CMakeFiles/OpenHantek.dir/OpenHantek_autogen/PNK5WDWK6L/qrc_firmwares.cpp.o

[ silence for 2 hours ]

c++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
make[2]: *** [openhantek/CMakeFiles/OpenHantek.dir/build.make:195: openhantek/CMakeFiles/OpenHantek.dir/src/docks/SpectrumDock.cpp.o] Error 1
make[2]: *** Deleting file 'openhantek/CMakeFiles/OpenHantek.dir/src/docks/SpectrumDock.cpp.o'

make[2]: *** Waiting for unfinished jobs....

c++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
make[2]: *** [openhantek/CMakeFiles/OpenHantek.dir/build.make:221: openhantek/CMakeFiles/OpenHantek.dir/src/docks/VoltageDock.cpp.o] Error 1
make[2]: *** Deleting file 'openhantek/CMakeFiles/OpenHantek.dir/src/docks/VoltageDock.cpp.o'

c++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
make[2]: *** [openhantek/CMakeFiles/OpenHantek.dir/build.make:208: openhantek/CMakeFiles/OpenHantek.dir/src/docks/TriggerDock.cpp.o] Error 1
make[2]: *** Deleting file 'openhantek/CMakeFiles/OpenHantek.dir/src/docks/TriggerDock.cpp.o'

[....]

warnings:

/tmp/openhantek/src/exporting/legacyexportdrawer.cpp: In static member function ‘static bool LegacyExportDrawer::exportSamples(const PPresult*, QPaintDevice*, const Dso::ControlSpecification*, const DsoSettings*, bool, const DsoSettingsColorValues*)’:
/tmp/openhantek/src/exporting/legacyexportdrawer.cpp:159:32: warning: ‘void QPainter::setMatrix(const QMatrix&, bool)’ is deprecated: Use setTransform() instead [-Wdeprecated-declarations]
  159 |                           false);
      |                                ^
In file included from /usr/include/qt/QtGui/QPainter:1,
                 from /tmp/openhantek/src/exporting/legacyexportdrawer.cpp:9:
/usr/include/qt/QtGui/qpainter.h:240:10: note: declared here
  240 |     void setMatrix(const QMatrix &matrix, bool combine = false);
      |          ^~~~~~~~~
/tmp/openhantek/src/exporting/legacyexportdrawer.cpp:254:36: warning: ‘void QPainter::setMatrix(const QMatrix&, bool)’ is deprecated: Use setTransform() instead [-Wdeprecated-declarations]
  254 |                               false);
      |                                    ^
In file included from /usr/include/qt/QtGui/QPainter:1,
                 from /tmp/openhantek/src/exporting/legacyexportdrawer.cpp:9:
/usr/include/qt/QtGui/qpainter.h:240:10: note: declared here
  240 |     void setMatrix(const QMatrix &matrix, bool combine = false);
      |          ^~~~~~~~~
/tmp/openhantek/src/exporting/legacyexportdrawer.cpp: In static member function ‘static void LegacyExportDrawer::drawGrids(QPainter&, const DsoSettingsColorValues*, double, double, int, bool, bool)’:
/tmp/openhantek/src/exporting/legacyexportdrawer.cpp:273:32: warning: ‘void QPainter::setMatrix(const QMatrix&, bool)’ is deprecated: Use setTransform() instead [-Wdeprecated-declarations]
  273 |                           false);
      |                                ^
In file included from /usr/include/qt/QtGui/QPainter:1,
                 from /tmp/openhantek/src/exporting/legacyexportdrawer.cpp:9:
/usr/include/qt/QtGui/qpainter.h:240:10: note: declared here
  240 |     void setMatrix(const QMatrix &matrix, bool combine = false);
      |          ^~~~~~~~~
make[1]: *** [CMakeFiles/Makefile2:157: openhantek/CMakeFiles/OpenHantek.dir/all] Error 2
make: *** [Makefile:152: all] Error 2

##  rc = 2   dT = 02:33:35.4186

i guess the compile only terminates, cos it runs out of swap space. cpu is 100% all the time, and ram has a linear increase to 100% and then starts swapping.

ideas anyone?

how can i help?

Ho-Ro commented 4 years ago

Hi, did you call cmake .. before calling make? Next idea - try make clean && make. Otherwise you could try OpenHantek6022 (in case your device is a Hantek6022).