2.9 Install Help
I used the ISO and got an instance of 2.8 working on my machine with the parallel port. I liked QTDragon and would like to try out QTDragon HD, which requires 2.9 effectively (best I can tell). I'll also note that I'll probably try PathPilot down the road, but I want to get things worked out with QTDragon HD first. To assist in this move, I'll be adding a Mesa 7i92H soon, but for now I'm just trying to get the software installed / working.
So, I tried upgrading my Buster / 2.8 install to 2.9, and that failed miserably. I had over a hundred dependencies that I couldn't figure out how to resolve, so I started looking for other options. Here on the forum, I found the sticky for installing 2.9 on Mint (forum.linuxcnc.org/9-installing-linuxcnc...ter-on-linux-mint-21), so I've tried that.
I have Mint installed, and LinuxCNC 2.9 works in Axis. But I can't get it to work with QTDragon (any of them). I first had errors that PYQT5 was missing, so I got that installed (sudo apt-get install python3-pyqt5).
Now, when I run LinuxCNC with any of the QTDragons, I get this error:
When I hit "Retry", I then get the normal LinuxCNC Errors window:Traceback (most recent call last):File "/usr/bin/qtvcp", line 511, in <module>APP = QTVCP()File "/usr/bin/qtvcp", line 133, in __init__from qtvcp import qt_makepins, qt_makeguiFile "/usr/lib/python3/dist-packages/qtvcp/qt_makepins.py", line 22, in <module>from qtvcp.widgets.screen_options import ScreenOptionsFile "/usr/lib/python3/dist-packages/qtvcp/widgets/screen_options.py", line 24, in <module>from qtvcp.lib.message import MessageFile "/usr/lib/python3/dist-packages/qtvcp/lib/message.py", line 5, in <module>from qtvcp.widgets.dialog_widget import LcncDialogFile "/usr/lib/python3/dist-packages/qtvcp/widgets/dialog_widget.py", line 32, in <module>from qtvcp.widgets.macro_widget import MacroTabFile "/usr/lib/python3/dist-packages/qtvcp/widgets/macro_widget.py", line 86, in <module>class CustomSVG(QtSvg.QSvgWidget):NameError: name 'QtSvg' is not defined
Print file information:
RUN_IN_PLACE=no
LINUXCNC_DIR=
LINUXCNC_BIN_DIR=/usr/bin
LINUXCNC_TCL_DIR=/usr/lib/tcltk/linuxcnc
LINUXCNC_SCRIPT_DIR=
LINUXCNC_RTLIB_DIR=/usr/lib/linuxcnc/modules
LINUXCNC_CONFIG_DIR=
LINUXCNC_LANG_DIR=/usr/lib/tcltk/linuxcnc/msgs
INIVAR=inivar
HALCMD=halcmd
LINUXCNC_EMCSH=/usr/bin/wish8.6
LINUXCNC - 2.9.0~pre0
Machine configuration directory is '/home/oem/linuxcnc/configs/sim.qtvcp_screens.qtdragon'
Machine configuration file is 'qtdragon.ini'
INIFILE=/home/oem/linuxcnc/configs/sim.qtvcp_screens.qtdragon/qtdragon.ini
VERSION=1.1
PARAMETER_FILE=qtdragon.var
TPMOD=
HOMEMOD=
TASK=milltask
HALUI=halui
DISPLAY=qtvcp qtdragon
COORDINATES=XYZ
KINEMATICS=trivkins coordinates=XYZ
Starting LinuxCNC...
Starting LinuxCNC server program: linuxcncsvr
Loading Real Time OS, RTAPI, and HAL_LIB modules
Starting LinuxCNC IO program: io
Starting HAL User Interface program: halui
linuxcnc TPMOD=tpmod HOMEMOD=homemod EMCMOT=motmod
Found file(REL): ./core_sim.hal
Found file(lib): /usr/share/linuxcnc/hallib/simulated_home.hal
Starting TASK program: milltask
Starting DISPLAY program: qtvcp
Shutting down and cleaning up LinuxCNC...
task: 7548 cycles, min=0.000021, max=0.014070, avg=0.010036, 0 latency excursions (> 10x expected cycle time of 0.010000s)
Removing HAL_LIB, RTAPI, and Real Time OS modules
Removing NML shared memory segments
Debug file information:
Note: Using POSIX realtime
[QTvcp][[31mERROR[0m] Qtvcp Error with loading webView - is python3-pyqt5.qtwebengine installed? (qtvcp:29)
[QTvcp.QTVCP.WIDGETS.MACRO_WIDGET][[41mCRITICAL[0m] Qtvcp error with macro_widget - is package python3-pyqt5.qtsvg installed? (macro_widget.py:44)
[QTvcp][[41mCRITICAL[0m] Retry from Error Dialog
Qtvcp encountered an error. The following information may be useful in troubleshooting:
LinuxCNC Version : 2.9.0~pre0
Traceback (most recent call last):
File "/usr/bin/qtvcp", line 511, in <module>
APP = QTVCP()
File "/usr/bin/qtvcp", line 133, in __init__
from qtvcp import qt_makepins, qt_makegui
File "/usr/lib/python3/dist-packages/qtvcp/qt_makepins.py", line 22, in <module>
from qtvcp.widgets.screen_options import ScreenOptions
File "/usr/lib/python3/dist-packages/qtvcp/widgets/screen_options.py", line 24, in <module>
from qtvcp.lib.message import Message
File "/usr/lib/python3/dist-packages/qtvcp/lib/message.py", line 5, in <module>
from qtvcp.widgets.dialog_widget import LcncDialog
File "/usr/lib/python3/dist-packages/qtvcp/widgets/dialog_widget.py", line 32, in <module>
from qtvcp.widgets.macro_widget import MacroTab
File "/usr/lib/python3/dist-packages/qtvcp/widgets/macro_widget.py", line 86, in <module>
class CustomSVG(QtSvg.QSvgWidget):
NameError: name 'QtSvg' is not defined
(qtvcp:507)
21020
21054
Stopping realtime threads
Unloading hal components
Note: Using POSIX realtime
I've googled as best I know how and haven't found any solutions related to LinuxCNC. I'm sure it's something simple, but I don't know how to fix it. Hopefully someone here does...
Thanks,
Danny
Please Log in or Create an account to join the conversation.
- tommylight
-
- Away
- Moderator
-
- Posts: 18562
- Thank you received: 6218
forum.linuxcnc.org/qtvcp/38414-installing-qtvcp
Please Log in or Create an account to join the conversation.
For newbies like me, what I did was:
cd /usr/lib/python3/dist-packages/qtvcp/designer/
sudo bash install_script
When prompted, I chose option #3 for package install (I guessed).
The base QTDragon now appears to work. But when I choose QTDragon HD, I get the QTVCP error window once it's loaded:
Traceback (most recent call last):File "/usr/lib/python3/dist-packages/qtvcp/widgets/round_gauge.py", line 54, in paintEventself.draw_zones(painter, event, w)File "/usr/lib/python3/dist-packages/qtvcp/widgets/round_gauge.py", line 84, in draw_zonesrect.setSize(QSize(w/2, w/2))TypeError: arguments did not match any overloaded call:QSize(): too many argumentsQSize(int, int): argument 1 has unexpected type 'float'QSize(QSize): argument 1 has unexpected type 'float'
And after I hit "Abort" ("Retry" doesn't change anything - the error pops right back up) then I get the normal Linux CNC error box that contains:
I haven't researched this one yet, but Ifigured I'd post my progress here for future reference...Print file information:
RUN_IN_PLACE=no
LINUXCNC_DIR=
LINUXCNC_BIN_DIR=/usr/bin
LINUXCNC_TCL_DIR=/usr/lib/tcltk/linuxcnc
LINUXCNC_SCRIPT_DIR=
LINUXCNC_RTLIB_DIR=/usr/lib/linuxcnc/modules
LINUXCNC_CONFIG_DIR=
LINUXCNC_LANG_DIR=/usr/lib/tcltk/linuxcnc/msgs
INIVAR=inivar
HALCMD=halcmd
LINUXCNC_EMCSH=/usr/bin/wish8.6
LINUXCNC - 2.9.0~pre0
Machine configuration directory is '/home/oem/linuxcnc/configs/sim.qtvcp_screens.qtdragon'
Machine configuration file is 'qtdragon_hd.ini'
INIFILE=/home/oem/linuxcnc/configs/sim.qtvcp_screens.qtdragon/qtdragon_hd.ini
VERSION=1.1
PARAMETER_FILE=qtdragon.var
TPMOD=
HOMEMOD=
TASK=milltask
HALUI=halui
DISPLAY=qtvcp qtdragon_hd
COORDINATES=XYZ
KINEMATICS=trivkins coordinates=XYZ
Starting LinuxCNC...
Starting LinuxCNC server program: linuxcncsvr
Loading Real Time OS, RTAPI, and HAL_LIB modules
Starting LinuxCNC IO program: io
Starting HAL User Interface program: halui
linuxcnc TPMOD=tpmod HOMEMOD=homemod EMCMOT=motmod
Found file(REL): ./core_sim.hal
Found file(lib): /usr/share/linuxcnc/hallib/simulated_home.hal
Starting TASK program: milltask
Starting DISPLAY program: qtvcp
Shutting down and cleaning up LinuxCNC...
task: 4270 cycles, min=0.000019, max=0.010305, avg=0.009994, 0 latency excursions (> 10x expected cycle time of 0.010000s)
Removing HAL_LIB, RTAPI, and Real Time OS modules
Removing NML shared memory segments
Debug file information:
Note: Using POSIX realtime
[QTvcp.QTVCP.LIB.QT_PDF.PDFVIEWER][[33mWARNING[0m] PDFViwer - Is python3-poppler-qt5 installed? (PDFViewer.py:15)
[QTvcp.QTVCP.LIB.QT_NGCGUI.NGCGUI][[34mDEBUG[0m] UI Filename: /usr/lib/python3/dist-packages/qtvcp/lib/qt_ngcgui/ngcgui.ui (ngcgui.py:458)
[QTvcp.QTVCP.LIB.QT_NGCGUI.NGCGUI][[34mDEBUG[0m] UI Filename: /usr/lib/python3/dist-packages/qtvcp/lib/qt_ngcgui/ngcgui.ui Didn't find a path NGCGUI files (ngcgui.py:485)
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QWidget::repaint: Recursive repaint detected
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
[QTvcp][[41mCRITICAL[0m] Retry from Error Dialog
Qtvcp encountered an error. The following information may be useful in troubleshooting:
LinuxCNC Version : 2.9.0~pre0
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/qtvcp/widgets/round_gauge.py", line 54, in paintEvent
self.draw_zones(painter, event, w)
File "/usr/lib/python3/dist-packages/qtvcp/widgets/round_gauge.py", line 84, in draw_zones
rect.setSize(QSize(w/2, w/2))
TypeError: arguments did not match any overloaded call:
QSize(): too many arguments
QSize(int, int): argument 1 has unexpected type 'float'
QSize(QSize): argument 1 has unexpected type 'float'
(qtvcp:507)
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QWidget::repaint: Recursive repaint detected
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
[QTvcp][[41mCRITICAL[0m] Retry from Error Dialog
Qtvcp encountered an error. The following information may be useful in troubleshooting:
LinuxCNC Version : 2.9.0~pre0
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/qtvcp/widgets/round_gauge.py", line 54, in paintEvent
self.draw_zones(painter, event, w)
File "/usr/lib/python3/dist-packages/qtvcp/widgets/round_gauge.py", line 84, in draw_zones
rect.setSize(QSize(w/2, w/2))
TypeError: arguments did not match any overloaded call:
QSize(): too many arguments
QSize(int, int): argument 1 has unexpected type 'float'
QSize(QSize): argument 1 has unexpected type 'float'
(qtvcp:507)
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
[QTvcp][[41mCRITICAL[0m] Aborted from Error Dialog
Qtvcp encountered an error. The following information may be useful in troubleshooting:
LinuxCNC Version : 2.9.0~pre0
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/qtvcp/widgets/round_gauge.py", line 54, in paintEvent
self.draw_zones(painter, event, w)
File "/usr/lib/python3/dist-packages/qtvcp/widgets/round_gauge.py", line 84, in draw_zones
rect.setSize(QSize(w/2, w/2))
TypeError: arguments did not match any overloaded call:
QSize(): too many arguments
QSize(int, int): argument 1 has unexpected type 'float'
QSize(QSize): argument 1 has unexpected type 'float'
(qtvcp:503)
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
QBackingStore::endPaint() called with active painter; did you forget to destroy it or call QPainter::end() on it?
/usr/bin/linuxcnc: line 963: 4227 Segmentation fault (core dumped) $EMCDISPLAY -ini "$INIFILE" $EMCDISPLAYARGS $EXTRA_ARGS
4189
4223
Stopping realtime threads
Unloading hal components
Note: Using POSIX realtime
Danny
Please Log in or Create an account to join the conversation.
Danny
Please Log in or Create an account to join the conversation.
- tommylight
-
- Away
- Moderator
-
- Posts: 18562
- Thank you received: 6218
Those all seem QT errors, so might get more help here.
Please Log in or Create an account to join the conversation.
can you;
open a terminal and type:
python3
then:
from PyQt5.QtCore import QT_VERSION_STR, PYQT_VERSION_STR
print("Qt: v", QT_VERSION_STR, "\tPyQt: v", PYQT_VERSION_STR)
And post what it prints.
Please Log in or Create an account to join the conversation.
Danny
Please Log in or Create an account to join the conversation.
I'm 99% sure that version has the changes that break out code.
Unfortunately I don't have a system that uses the new library so can't current test.
I have fixed the errors as best I can as they are reported.
I see errors from round_gauge in your post so will look at he code and see if I can fix it.
Please Log in or Create an account to join the conversation.
Is there a work-around? Can I downgrade something somehow for instance?
Thanks for the help,
Danny
Please Log in or Create an account to join the conversation.
So you could try checking for linuxcnc updates.
I know no way to downgrade the pyqt version on the system.
Only by using an older distribution.
Please Log in or Create an account to join the conversation.