qt6 migration issue
-
@JonB You both are right but all this is absolutely weird. I recompiled it now on another machine with the original QT5 and no error at all, everything runs perfectly and looking at the code it's exaclty the same.
Also, in QT6, if I compile in release mode it shows me only like 10 of these errors, if I switch to Debug and compile they jump to around 1500 errors of this type.
-
@Actarus For example this is another error I get in QT6:
while in debug mode in QT5 I get the following, even if it compiles with no error in release mode in QT5:
Yes, because it has changed - see the documentation to QWidget::enterEvent() and fix your code accordingly.
-
Yes, because it has changed - see the documentation to QWidget::enterEvent() and fix your code accordingly.
@Christian-Ehrlicher Thanks, that has been fixed. Now trying to figure out the first issue and guessing why in QT5 it can work.
-
@Christian-Ehrlicher Thanks, that has been fixed. Now trying to figure out the first issue and guessing why in QT5 it can work.
@Actarus said in qt6 migration issue:
guessing why in QT5 it can work.
Implictly converting a char* into a QString is wrong so... don't think about it but fix it.
-
@Actarus said in qt6 migration issue:
guessing why in QT5 it can work.
Implictly converting a char* into a QString is wrong so... don't think about it but fix it.
@Christian-Ehrlicher I'll do. Now I fixed another issue about the following where I changed X, that was deprecated, to position
//if ((0 == m_ChartViewer) || (!isOnPlotArea(event->x(), event->y()))) if ((0 == m_ChartViewer) || (!isOnPlotArea(event->position().x(), event->position().y()))) event->ignore();
but now it shows me the following error on that line:
-
@Christian-Ehrlicher I'll do. Now I fixed another issue about the following where I changed X, that was deprecated, to position
//if ((0 == m_ChartViewer) || (!isOnPlotArea(event->x(), event->y()))) if ((0 == m_ChartViewer) || (!isOnPlotArea(event->position().x(), event->position().y()))) event->ignore();
but now it shows me the following error on that line:
@Actarus
The implication is thatisOnPlotArea()
only accepts aQPointF
. (Documentation seemingly at https://www.advsofteng.com/doc/cdcppdoc/ViewPortControlBase.isOnPlotArea.htm notwithstanding.)
Put your cursor in that method name and press F2. Does it take you to the header file? What overloads ofisOnPlotArea()
are there?
Also does this error occur when you compile or only visible within Creator? -
@Actarus
The implication is thatisOnPlotArea()
only accepts aQPointF
. (Documentation seemingly at https://www.advsofteng.com/doc/cdcppdoc/ViewPortControlBase.isOnPlotArea.htm notwithstanding.)
Put your cursor in that method name and press F2. Does it take you to the header file? What overloads ofisOnPlotArea()
are there?
Also does this error occur when you compile or only visible within Creator? -
@JonB Thanks Jon, fixed, pressing F2 it jumped to the header where I had:
bool isOnPlotArea(QPointF x, QPointF y)changed to: bool isOnPlotArea(double x, double y) and now it's fine.
-
@Actarus said in qt6 migration issue:
changed to: bool isOnPlotArea(double x, double y) and now it's fine.
Ummm, gulp :) Your header file or Qt's??
@JonB Mine, it had been edited wrongly to fix a previous error message.
I have fixed tons of parts now but I'm still struggling with around 15 errors like this:
error: qualified-id in declaration before '(' token
error: qualified-id in declaration before '(' token
| void ChartsAxis::sectionHasBeenClicked(int logicalIndex)
|Here the example code:
void ChartsAxis::sectionHasBeenClicked(int logicalIndex) { if((isComp)&&(logicalIndex > 0)) { bool found = false; int index = 0; for(int is = 0; is < pStructComp->size(); is++) { for(int il = 0; il < pStructComp->at(is)->giri.size(); il++) { index++; if(index == logicalIndex) { QFont f; f.setBold(true); if(this->width()-frame->width() >= 600) { labelOffset->setGeometry((this->width()-frame->width())/2 - 300, 0, 600, 20); f.setPixelSize(15); } else if(this->width()-frame->width() >= 380) { labelOffset->setGeometry((this->width()-frame->width())/2 - 190, 0, 380, 20); f.setPixelSize(11); } else { labelOffset->setGeometry(0, 0, (this->width()-frame->width()), 20); f.setPixelSize(11); } labelOffset->setFont(f); labelOffset->show(); found = true; emit setOffsetIndex(is, il); break; } } if(found) break; } } }
-
@JonB Mine, it had been edited wrongly to fix a previous error message.
I have fixed tons of parts now but I'm still struggling with around 15 errors like this:
error: qualified-id in declaration before '(' token
error: qualified-id in declaration before '(' token
| void ChartsAxis::sectionHasBeenClicked(int logicalIndex)
|Here the example code:
void ChartsAxis::sectionHasBeenClicked(int logicalIndex) { if((isComp)&&(logicalIndex > 0)) { bool found = false; int index = 0; for(int is = 0; is < pStructComp->size(); is++) { for(int il = 0; il < pStructComp->at(is)->giri.size(); il++) { index++; if(index == logicalIndex) { QFont f; f.setBold(true); if(this->width()-frame->width() >= 600) { labelOffset->setGeometry((this->width()-frame->width())/2 - 300, 0, 600, 20); f.setPixelSize(15); } else if(this->width()-frame->width() >= 380) { labelOffset->setGeometry((this->width()-frame->width())/2 - 190, 0, 380, 20); f.setPixelSize(11); } else { labelOffset->setGeometry(0, 0, (this->width()-frame->width()), 20); f.setPixelSize(11); } labelOffset->setFont(f); labelOffset->show(); found = true; emit setOffsetIndex(is, il); break; } } if(found) break; } } }
@Actarus
The error message is complaining on the method definition line, so showing its body is not relevant as it does not get that far. For "Function definition not allowed here" you may have to look back a few lines for context, e.g. (only an example) if previous function not properly terminated with a}
it might generate this message. Make sure it marries with the included header declaration too. -
@Actarus
The error message is complaining on the method definition line, so showing its body is not relevant as it does not get that far. For "Function definition not allowed here" you may have to look back a few lines for context, e.g. (only an example) if previous function not properly terminated with a}
it might generate this message. Make sure it marries with the included header declaration too.@JonB Thanks Jon, all sorted with } a few lines above.
Can you help in correcting the sintax for QT6 for the following line of QTableWidgetItem:
colorPicker = new QColorDialog(ui->table->item(r, 0)->backgroundColor(), nullptr
I corrected replacing backgroundColor with background, but I can't get the correct sintax.
I still have only 2 last errors to fix, the first is the one above and the last one is this below, for which I can't find anything online:
Thanks
-
@JonB Thanks Jon, all sorted with } a few lines above.
Can you help in correcting the sintax for QT6 for the following line of QTableWidgetItem:
colorPicker = new QColorDialog(ui->table->item(r, 0)->backgroundColor(), nullptr
I corrected replacing backgroundColor with background, but I can't get the correct sintax.
I still have only 2 last errors to fix, the first is the one above and the last one is this below, for which I can't find anything online:
Thanks
@Actarus said in qt6 migration issue:
and the last one is this below
This is not the error message.
Please post the real error which is above that line...
It is also better to post error as text not images. -
@Actarus said in qt6 migration issue:
and the last one is this below
This is not the error message.
Please post the real error which is above that line...
It is also better to post error as text not images.@jsulm This is what above that line in Compile Output window:
g++ -c -fno-keep-inline-dllexport -g -Wall -Wextra -Wextra -fexceptions -mthreads -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DQT_DEPRECATED_WARNINGS -DCHARTDIR_HIDE_OBSOLETE -D_CRT_SECURE_NO_WARNINGS -DQT_PRINTSUPPORT_LIB -DQT_QUICKWIDGETS_LIB -DQT_WIDGETS_LIB -DQT_QUICK_LIB -DQT_OPENGL_LIB -DQT_GUI_LIB -DQT_CORE5COMPAT_LIB -DQT_QMLMODELS_LIB -DQT_QML_LIB -DQT_QMLINTEGRATION_LIB -DQT_BLUETOOTH_LIB -DQT_NETWORK_LIB -DQT_SQL_LIB -DQT_SERIALPORT_LIB -DQT_POSITIONING_LIB -DQT_XML_LIB -DQT_CORE_LIB -DQT_NEEDS_QMAIN -I../Test -I. -I../Test/Charts -I../Test/Charts/Tables -I../Test/Charts/JSONObjects -I../Test/Archivio -I../Test/Comp -I../Test/Parse -I../Test/Bluetooth -I../Test/MD5 -I../Test/Devs -I../Test/Devs/DevicesFactory -I../Test/Conf -I../Test/Usb -I../Test/Triggers -I../Test/SubClass -I../Test/Server -I../Test/Exporter -I../Test/Wifi -IC:/Projects/QT_Project/Test/ZipPack/include -IC:/Projects/QT_Project/Test/LimeReport/Release/include -I../include -I../../../Qt/6.5.0/mingw_64/include -I../../../Qt/6.5.0/mingw_64/include/QtPrintSupport -I../../../Qt/6.5.0/mingw_64/include/QtQuickWidgets -I../../../Qt/6.5.0/mingw_64/include/QtWidgets -I../../../Qt/6.5.0/mingw_64/include/QtQuick -I../../../Qt/6.5.0/mingw_64/include/QtOpenGL -I../../../Qt/6.5.0/mingw_64/include/QtGui -I../../../Qt/6.5.0/mingw_64/include/QtCore5Compat -I../../../Qt/6.5.0/mingw_64/include/QtQmlModels -I../../../Qt/6.5.0/mingw_64/include/QtQml -I../../../Qt/6.5.0/mingw_64/include/QtQmlIntegration -I../../../Qt/6.5.0/mingw_64/include/QtBluetooth -I../../../Qt/6.5.0/mingw_64/include/QtNetwork -I../../../Qt/6.5.0/mingw_64/include/QtSql -I../../../Qt/6.5.0/mingw_64/include/QtSerialPort -I../../../Qt/6.5.0/mingw_64/include/QtPositioning -I../../../Qt/6.5.0/mingw_64/include/QtXml -I../../../Qt/6.5.0/mingw_64/include/QtCore -Idebug -I. -I/include -I../../../Qt/6.5.0/mingw_64/mkspecs/win32-g++ -o debug\chartmappa.o ..\Test\Charts\chartmappa.cpp
mingw32-make[1]: *** [Makefile.Debug:32897: debug/colorrange.o] Error 1 -
@jsulm This is what above that line in Compile Output window:
g++ -c -fno-keep-inline-dllexport -g -Wall -Wextra -Wextra -fexceptions -mthreads -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DQT_DEPRECATED_WARNINGS -DCHARTDIR_HIDE_OBSOLETE -D_CRT_SECURE_NO_WARNINGS -DQT_PRINTSUPPORT_LIB -DQT_QUICKWIDGETS_LIB -DQT_WIDGETS_LIB -DQT_QUICK_LIB -DQT_OPENGL_LIB -DQT_GUI_LIB -DQT_CORE5COMPAT_LIB -DQT_QMLMODELS_LIB -DQT_QML_LIB -DQT_QMLINTEGRATION_LIB -DQT_BLUETOOTH_LIB -DQT_NETWORK_LIB -DQT_SQL_LIB -DQT_SERIALPORT_LIB -DQT_POSITIONING_LIB -DQT_XML_LIB -DQT_CORE_LIB -DQT_NEEDS_QMAIN -I../Test -I. -I../Test/Charts -I../Test/Charts/Tables -I../Test/Charts/JSONObjects -I../Test/Archivio -I../Test/Comp -I../Test/Parse -I../Test/Bluetooth -I../Test/MD5 -I../Test/Devs -I../Test/Devs/DevicesFactory -I../Test/Conf -I../Test/Usb -I../Test/Triggers -I../Test/SubClass -I../Test/Server -I../Test/Exporter -I../Test/Wifi -IC:/Projects/QT_Project/Test/ZipPack/include -IC:/Projects/QT_Project/Test/LimeReport/Release/include -I../include -I../../../Qt/6.5.0/mingw_64/include -I../../../Qt/6.5.0/mingw_64/include/QtPrintSupport -I../../../Qt/6.5.0/mingw_64/include/QtQuickWidgets -I../../../Qt/6.5.0/mingw_64/include/QtWidgets -I../../../Qt/6.5.0/mingw_64/include/QtQuick -I../../../Qt/6.5.0/mingw_64/include/QtOpenGL -I../../../Qt/6.5.0/mingw_64/include/QtGui -I../../../Qt/6.5.0/mingw_64/include/QtCore5Compat -I../../../Qt/6.5.0/mingw_64/include/QtQmlModels -I../../../Qt/6.5.0/mingw_64/include/QtQml -I../../../Qt/6.5.0/mingw_64/include/QtQmlIntegration -I../../../Qt/6.5.0/mingw_64/include/QtBluetooth -I../../../Qt/6.5.0/mingw_64/include/QtNetwork -I../../../Qt/6.5.0/mingw_64/include/QtSql -I../../../Qt/6.5.0/mingw_64/include/QtSerialPort -I../../../Qt/6.5.0/mingw_64/include/QtPositioning -I../../../Qt/6.5.0/mingw_64/include/QtXml -I../../../Qt/6.5.0/mingw_64/include/QtCore -Idebug -I. -I/include -I../../../Qt/6.5.0/mingw_64/mkspecs/win32-g++ -o debug\chartmappa.o ..\Test\Charts\chartmappa.cpp
mingw32-make[1]: *** [Makefile.Debug:32897: debug/colorrange.o] Error 1@Actarus said in qt6 migration issue:
debug/colorrange.o] Error 1
Strange, because that
colorrage.o
file is not even mentioned on the previous line, which may have been completed successfully. make may be moving on to build the next file alphabetically. Errno 1 would be "EPERM". Doesdebug/colorrange.o
already exist? Are you able to delete it? -
@Actarus said in qt6 migration issue:
debug/colorrange.o] Error 1
Strange, because that
colorrage.o
file is not even mentioned on the previous line, which may have been completed successfully. make may be moving on to build the next file alphabetically. Errno 1 would be "EPERM". Doesdebug/colorrange.o
already exist? Are you able to delete it? -
@Actarus said in qt6 migration issue:
debug/colorrange.o] Error 1
Strange, because that
colorrage.o
file is not even mentioned on the previous line, which may have been completed successfully. make may be moving on to build the next file alphabetically. Errno 1 would be "EPERM". Doesdebug/colorrange.o
already exist? Are you able to delete it? -
@JonB Can it be related to the error message on the top of the editor window?
Stating:
Error:Could not decode "colorrange.cpp" with "UTF-8"-encoding. Editing not possible. -
@Actarus
That's not good! There would appear to be a problem if editor says the.cpp
is not editable I would be worried :) Which may lead to a problem when trying to compile it to the.o
file.... -
@Actarus
That's not good! There would appear to be a problem if editor says the.cpp
is not editable I would be worried :) Which may lead to a problem when trying to compile it to the.o
file.... -
@JonB I've just checked and I have the same message on the other PC with QT5 but, in that case, it compiles without errors and I can find the colorrange.o file in the debug folder.