harbour / core

Portable, xBase compatible programming language and environment
https://harbour.github.io/
Other
320 stars 207 forks source link

Does not compile on Manjaro/Arch Linux #267

Open StrandedAlien opened 2 years ago

StrandedAlien commented 2 years ago

Very cool idea, clipper was so powerful when it came out back in the days.... However, it does not properly compile, given it has no dependencies, this makes me wonder. Stone old EXE!??? files necessary to build for Win? What a pity, i would have loved to play with it. I cloned the git and started make. I compiles a while and (i assume just before finishing) then it throws a bunch of errors.

Partial bash messages for make, copied part from start of errors to end of compilation:

harbour/core/bin/linux/gcc/hbmk2 -quiet -width=0 -autohbm- @hbpre -inc gtqtc/gtqtc.hbp @hbpost ../../../../../lib/linux/gcc/.hbmk/gtqtc/moc_gtqtc.cpp:16:2: error: #error "This file was generated using the moc from 5.15.5. It" 16 | #error "This file was generated using the moc from 5.15.5. It" | ^~~~~ ../../../../../lib/linux/gcc/.hbmk/gtqtc/moc_gtqtc.cpp:17:2: error: #error "cannot be used with the include files from this version of Qt." 17 | #error "cannot be used with the include files from this version of Qt." | ^~~~~ ../../../../../lib/linux/gcc/.hbmk/gtqtc/moc_gtqtc.cpp:18:2: error: #error "(The moc has changed too much.)" 18 | #error "(The moc has changed too much.)" | ^~~~~ In file included from /usr/include/qt4/QtCore/qobject.h:48, from /usr/include/qt4/QtCore/qthread.h:45, from /usr/include/qt4/QtCore/QThread:1, from ../../../../../lib/linux/gcc/.hbmk/gtqtc/../../../../../contrib/gtqtc/gtqtc.h:54, from ../../../../../lib/linux/gcc/.hbmk/gtqtc/moc_gtqtc.cpp:10: /usr/include/qt4/QtCore/qstring.h: In member function ‘int QStringRef::compare(QLatin1String, Qt::CaseSensitivity) const’: /usr/include/qt4/QtCore/qstring.h:1254:33: warning: implicitly-declared ‘constexpr QLatin1String::QLatin1String(const QLatin1String&)’ is deprecated [-Wdeprecated-copy] 1254 | { return QString::compare_helper(constData(), length(), s, cs); } | ~~~~~^~~~~~~~ /usr/include/qt4/QtCore/qstring.h:658:27: note: because ‘QLatin1String’ has user-provided ‘QLatin1String& QLatin1String::operator=(const QLatin1String&)’ 658 | inline QLatin1String &operator=(const QLatin1String &other) | ^~~~ /usr/include/qt4/QtCore/qstring.h:634:45: note: initializing argument 3 of ‘static int QString::compare_helper(const QChar, int, QLatin1String, Qt::CaseSensitivity)’ 634 | QLatin1String s2, | ~~~~~~^~ /usr/include/qt4/QtCore/qstring.h: In static member function ‘static int QStringRef::compare(const QStringRef&, QLatin1String, Qt::CaseSensitivity)’: /usr/include/qt4/QtCore/qstring.h:1260:33: warning: implicitly-declared ‘constexpr QLatin1String::QLatin1String(const QLatin1String&)’ is deprecated [-Wdeprecated-copy] 1260 | { return QString::compare_helper(s1.constData(), s1.length(), s2, cs); } | ~~~~~^~~~~~~~~~~ /usr/include/qt4/QtCore/qstring.h:658:27: note: because ‘QLatin1String’ has user-provided ‘QLatin1String& QLatin1String::operator=(const QLatin1String&)’ 658 | inline QLatin1String &operator=(const QLatin1String &other) | ^~~~ /usr/include/qt4/QtCore/qstring.h:634:45: note: initializing argument 3 of ‘static int QString::compare_helper(const QChar, int, QLatin1String, Qt::CaseSensitivity)’ 634 | QLatin1String s2, | ~~~~~~^~ /usr/include/qt4/QtCore/qstring.h: In member function ‘QBool QStringRef::contains(QLatin1String, Qt::CaseSensitivity) const’: /usr/include/qt4/QtCore/qstring.h:1278:23: warning: implicitly-declared ‘constexpr QLatin1String::QLatin1String(const QLatin1String&)’ is deprecated [-Wdeprecated-copy] 1278 | { return QBool(indexOf(s, 0, cs) != -1); } | ~^~~~ /usr/include/qt4/QtCore/qstring.h:658:27: note: because ‘QLatin1String’ has user-provided ‘QLatin1String& QLatin1String::operator=(const QLatin1String&)’ 658 | inline QLatin1String &operator=(const QLatin1String &other) | ^~~~ /usr/include/qt4/QtCore/qstring.h:1125:31: note: initializing argument 1 of ‘int QStringRef::indexOf(QLatin1String, int, Qt::CaseSensitivity) const’ 1125 | int indexOf(QLatin1String str, int from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive) const; | ~~~~^ In file included from /usr/include/qt4/QtGui/qimage.h:45, from /usr/include/qt4/QtGui/qpixmap.h:50, from /usr/include/qt4/QtGui/qpainter.h:49, from /usr/include/qt4/QtGui/QPainter:1, from ../../../../../lib/linux/gcc/.hbmk/gtqtc/../../../../../contrib/gtqtc/gtqtc.h:59: /usr/include/qt4/QtGui/qtransform.h: In function ‘QTransform operator(const QTransform&, qreal)’: /usr/include/qt4/QtGui/qtransform.h:383:17: warning: implicitly-declared ‘QTransform::QTransform(const QTransform&)’ is deprecated [-Wdeprecated-copy] 383 | { QTransform t(a); t = n; return t; } | ^ /usr/include/qt4/QtGui/qtransform.h:136:17: note: because ‘QTransform’ has user-provided ‘QTransform& QTransform::operator=(const QTransform&)’ 136 | QTransform &operator=(const QTransform &); | ^~~~ /usr/include/qt4/QtGui/qtransform.h:383:35: warning: implicitly-declared ‘QTransform::QTransform(const QTransform&)’ is deprecated [-Wdeprecated-copy] 383 | { QTransform t(a); t = n; return t; } | ^ /usr/include/qt4/QtGui/qtransform.h:136:17: note: because ‘QTransform’ has user-provided ‘QTransform& QTransform::operator=(const QTransform&)’ 136 | QTransform &operator=(const QTransform &); | ^~~~ /usr/include/qt4/QtGui/qtransform.h: In function ‘QTransform operator/(const QTransform&, qreal)’: /usr/include/qt4/QtGui/qtransform.h:385:17: warning: implicitly-declared ‘QTransform::QTransform(const QTransform&)’ is deprecated [-Wdeprecated-copy] 385 | { QTransform t(a); t /= n; return t; } | ^ /usr/include/qt4/QtGui/qtransform.h:136:17: note: because ‘QTransform’ has user-provided ‘QTransform& QTransform::operator=(const QTransform&)’ 136 | QTransform &operator=(const QTransform &); | ^~~~ /usr/include/qt4/QtGui/qtransform.h:385:35: warning: implicitly-declared ‘QTransform::QTransform(const QTransform&)’ is deprecated [-Wdeprecated-copy] 385 | { QTransform t(a); t /= n; return t; } | ^ /usr/include/qt4/QtGui/qtransform.h:136:17: note: because ‘QTransform’ has user-provided ‘QTransform& QTransform::operator=(const QTransform&)’ 136 | QTransform &operator=(const QTransform &); | ^~~~ /usr/include/qt4/QtGui/qtransform.h: In function ‘QTransform operator+(const QTransform&, qreal)’: /usr/include/qt4/QtGui/qtransform.h:387:17: warning: implicitly-declared ‘QTransform::QTransform(const QTransform&)’ is deprecated [-Wdeprecated-copy] 387 | { QTransform t(a); t += n; return t; } | ^ /usr/include/qt4/QtGui/qtransform.h:136:17: note: because ‘QTransform’ has user-provided ‘QTransform& QTransform::operator=(const QTransform&)’ 136 | QTransform &operator=(const QTransform &); | ^~~~ /usr/include/qt4/QtGui/qtransform.h:387:35: warning: implicitly-declared ‘QTransform::QTransform(const QTransform&)’ is deprecated [-Wdeprecated-copy] 387 | { QTransform t(a); t += n; return t; } | ^ /usr/include/qt4/QtGui/qtransform.h:136:17: note: because ‘QTransform’ has user-provided ‘QTransform& QTransform::operator=(const QTransform&)’ 136 | QTransform &operator=(const QTransform &); | ^~~~ /usr/include/qt4/QtGui/qtransform.h: In function ‘QTransform operator-(const QTransform&, qreal)’: /usr/include/qt4/QtGui/qtransform.h:389:17: warning: implicitly-declared ‘QTransform::QTransform(const QTransform&)’ is deprecated [-Wdeprecated-copy] 389 | { QTransform t(a); t -= n; return t; } | ^ /usr/include/qt4/QtGui/qtransform.h:136:17: note: because ‘QTransform’ has user-provided ‘QTransform& QTransform::operator=(const QTransform&)’ 136 | QTransform &operator=(const QTransform &); | ^~~~ /usr/include/qt4/QtGui/qtransform.h:389:35: warning: implicitly-declared ‘QTransform::QTransform(const QTransform&)’ is deprecated [-Wdeprecated-copy] 389 | { QTransform t(a); t -= n; return t; } | ^ /usr/include/qt4/QtGui/qtransform.h:136:17: note: because ‘QTransform’ has user-provided ‘QTransform& QTransform::operator=(const QTransform&)’ 136 | QTransform &operator=(const QTransform &); | ^~~~ In file included from /usr/include/qt4/QtGui/qpen.h:46, from /usr/include/qt4/QtGui/qpainter.h:56: /usr/include/qt4/QtGui/qbrush.h: In member function ‘QTransform QBrush::transform() const’: /usr/include/qt4/QtGui/qbrush.h:185:57: warning: implicitly-declared ‘QTransform::QTransform(const QTransform&)’ is deprecated [-Wdeprecated-copy] 185 | inline QTransform QBrush::transform() const { return d->transform; } | ~^~~ /usr/include/qt4/QtGui/qtransform.h:136:17: note: because ‘QTransform’ has user-provided ‘QTransform& QTransform::operator=(const QTransform&)’ 136 | QTransform &operator=(const QTransform &); | ^~~~ ../../../../../lib/linux/gcc/.hbmk/gtqtc/moc_gtqtc.cpp: At global scope: ../../../../../lib/linux/gcc/.hbmk/gtqtc/moc_gtqtc.cpp:22:1: error: ‘QT_WARNING_PUSH’ does not name a type 22 | QT_WARNING_PUSH | ^~~~~~~ ../../../../../lib/linux/gcc/.hbmk/gtqtc/moc_gtqtc.cpp:33:14: error: ‘qt_meta_stringdata_QTConsole_t’ does not name a type 33 | static const qt_meta_stringdata_QTConsole_t qt_meta_stringdata_QTConsole = { | ^~~~~~~~~~ ../../../../../lib/linux/gcc/.hbmk/gtqtc/moc_gtqtc.cpp:66:1: error: ‘QT_INIT_METAOBJECT’ does not name a type 66 | QT_INIT_METAOBJECT const QMetaObject QTConsole::staticMetaObject = { { | ^~~~~~ ../../../../../lib/linux/gcc/.hbmk/gtqtc/moc_gtqtc.cpp: In member function ‘virtual const QMetaObject QTConsole::metaObject() const’: ../../../../../lib/linux/gcc/.hbmk/gtqtc/moc_gtqtc.cpp:78:57: error: ‘class QObjectData’ has no member named ‘dynamicMetaObject’ 78 | return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject; | ^~~~~ ../../../../../lib/linux/gcc/.hbmk/gtqtc/moc_gtqtc.cpp: In member function ‘virtual void QTConsole::qt_metacast(const char)’: ../../../../../lib/linux/gcc/.hbmk/gtqtc/moc_gtqtc.cpp:84:26: error: ‘qt_meta_stringdata_QTConsole’ was not declared in this scope; did you mean ‘qt_meta_data_QTConsole’? 84 | if (!strcmp(_clname, qt_meta_stringdata_QTConsole.stringdata0)) | ^~~~~~~~ | qt_meta_data_QTConsole ../../../../../lib/linux/gcc/.hbmk/gtqtc/moc_gtqtc.cpp: At global scope: ../../../../../lib/linux/gcc/.hbmk/gtqtc/moc_gtqtc.cpp:95:5: error: ‘QByteArrayData’ does not name a type; did you mean ‘QByteArray’? 95 | QByteArrayData data[1]; | ^~~~~~ | QByteArray ../../../../../lib/linux/gcc/.hbmk/gtqtc/moc_gtqtc.cpp:101:24: error: ‘QByteArrayData’ was not declared in this scope; did you mean ‘QByteArray’? 101 | - idx sizeof(QByteArrayData)) \ | ^~~~~~ ../../../../../lib/linux/gcc/.hbmk/gtqtc/moc_gtqtc.cpp:105:1: note: in expansion of macro ‘QT_MOC_LITERAL’ 105 | QT_MOC_LITERAL(0, 0, 9) // "QTCWindow" | ^~~~~~ ../../../../../lib/linux/gcc/.hbmk/gtqtc/moc_gtqtc.cpp:99:5: error: ‘Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET’ was not declared in this scope 99 | Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \ | ^~~~~~~~~~~~~~~ ../../../../../lib/linux/gcc/.hbmk/gtqtc/moc_gtqtc.cpp:99:5: note: in definition of macro ‘QT_MOC_LITERAL’ 99 | Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \ | ^~~~~~~~~~~~~~~ ../../../../../lib/linux/gcc/.hbmk/gtqtc/moc_gtqtc.cpp:136:1: error: ‘QT_INIT_METAOBJECT’ does not name a type 136 | QT_INIT_METAOBJECT const QMetaObject QTCWindow::staticMetaObject = { { | ^~~~~~ ../../../../../lib/linux/gcc/.hbmk/gtqtc/moc_gtqtc.cpp: In member function ‘virtual const QMetaObject QTCWindow::metaObject() const’: ../../../../../lib/linux/gcc/.hbmk/gtqtc/moc_gtqtc.cpp:148:57: error: ‘class QObjectData’ has no member named ‘dynamicMetaObject’ 148 | return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject; | ^~~~~ ../../../../../lib/linux/gcc/.hbmk/gtqtc/moc_gtqtc.cpp: At global scope: ../../../../../lib/linux/gcc/.hbmk/gtqtc/moc_gtqtc.cpp:164:1: error: ‘QT_WARNING_POP’ does not name a type 164 | QT_WARNING_POP | ^~~~~~ hbmk2[gtqtc]: Error: Running C/C++ compiler. 1 hbmk2[gtqtc]: Exit status: 6: failed in compilation (Harbour, C compiler, Resource compiler) ! Finished package build... make[1]: [Makefile:8: first] Error 6 make: [config/dir.mk:71: contrib] Error 2

You can easily make a bootable USB stick from the latest Manjaro image and see for yourself. Cheers.

alcz commented 1 year ago

It seems nobody would like to support Qt issues here, even if yours is not exactly related to that. You start a build process with HB_WITH_QT=no defined, the result will be fine for terminal applications.