Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compile on Linux fails #1

Closed
Mte90 opened this issue May 3, 2021 · 6 comments
Closed

Compile on Linux fails #1

Mte90 opened this issue May 3, 2021 · 6 comments

Comments

@Mte90
Copy link

Mte90 commented May 3, 2021

I am using Debian sid (with qt 5.15.5) but I am getting this errors during the compile process:

Info: creating stash file /home/mte90/Desktop/kde/SciTEQt/.qmake.stash
Reading /home/mte90/Desktop/kde/SciTEQt/scintilla/qt/ScintillaEditBase/ScintillaEditBase.pro
Reading /home/mte90/Desktop/kde/SciTEQt/scite/qt/qt.pro
cd scintilla/qt/ScintillaEditBase/ && ( test -e Makefile || /usr/lib/qt5/bin/qmake -o Makefile /home/mte90/Desktop/kde/SciTEQt/scintilla/qt/ScintillaEditBase/ScintillaEditBase.pro ) && make -f Makefile 
make[1]: ingresso nella directory «/home/mte90/Desktop/kde/SciTEQt/scintilla/qt/ScintillaEditBase»
g++ -c -pipe -O2 -fPIC -std=gnu++1z -Wall -Wextra -D_REENTRANT -DSCINTILLA_QT_QML=1 -DMAKING_LIBRARY=1 -DSCI_LEXER=1 -D_CRT_SECURE_NO_DEPRECATE=1 -DNDEBUG=1 -DQT_NO_DEBUG -DQT_QUICK_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_QMLMODELS_LIB -DQT_QML_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I. -I../../include -I../../src -I../../lexlib -I../../lexilla/src -I/usr/include/x86_64-linux-gnu/qt5 -I/usr/include/x86_64-linux-gnu/qt5/QtQuick -I/usr/include/x86_64-linux-gnu/qt5/QtWidgets -I/usr/include/x86_64-linux-gnu/qt5/QtGui -I/usr/include/x86_64-linux-gnu/qt5/QtQmlModels -I/usr/include/x86_64-linux-gnu/qt5/QtQml -I/usr/include/x86_64-linux-gnu/qt5/QtNetwork -I/usr/include/x86_64-linux-gnu/qt5/QtCore -I. -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++ -o PlatQt.o PlatQt.cpp
PlatQt.cpp: In member function ‘Scintilla::PRectangle Scintilla::Window::GetMonitorRect(Scintilla::Point)’:
PlatQt.cpp:851:83: warning: ‘const QRect QDesktopWidget::availableGeometry(const QPoint&) const’ is deprecated: Use QGuiApplication::screenAt() [-Wdeprecated-declarations]
  851 |  QRect rectScreen = desktop->availableGeometry(QPoint(posGlobal.x(),posGlobal.y()));
      |                                                                                   ^
In file included from /usr/include/x86_64-linux-gnu/qt5/QtWidgets/QDesktopWidget:1,
                 from PlatQt.cpp:42:
/usr/include/x86_64-linux-gnu/qt5/QtWidgets/qdesktopwidget.h:89:68: note: declared here
   89 |     QT_DEPRECATED_X("Use QGuiApplication::screenAt()") const QRect availableGeometry(const QPoint &point) const
      |                                                                    ^~~~~~~~~~~~~~~~~
g++ -c -pipe -O2 -fPIC -std=gnu++1z -Wall -Wextra -D_REENTRANT -DSCINTILLA_QT_QML=1 -DMAKING_LIBRARY=1 -DSCI_LEXER=1 -D_CRT_SECURE_NO_DEPRECATE=1 -DNDEBUG=1 -DQT_NO_DEBUG -DQT_QUICK_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_QMLMODELS_LIB -DQT_QML_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I. -I../../include -I../../src -I../../lexlib -I../../lexilla/src -I/usr/include/x86_64-linux-gnu/qt5 -I/usr/include/x86_64-linux-gnu/qt5/QtQuick -I/usr/include/x86_64-linux-gnu/qt5/QtWidgets -I/usr/include/x86_64-linux-gnu/qt5/QtGui -I/usr/include/x86_64-linux-gnu/qt5/QtQmlModels -I/usr/include/x86_64-linux-gnu/qt5/QtQml -I/usr/include/x86_64-linux-gnu/qt5/QtNetwork -I/usr/include/x86_64-linux-gnu/qt5/QtCore -I. -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++ -o ScintillaQt.o ScintillaQt.cpp
ScintillaQt.cpp: In member function ‘void Scintilla::ScintillaQt::selectCurrentWord()’:
ScintillaQt.cpp:74:26: error: ‘iswalnum’ was not declared in this scope; did you mean ‘isalnum’?
   74 |     while(startPos>=0 && iswalnum(pdoc->CharAt(startPos)))
      |                          ^~~~~~~~
      |                          isalnum
ScintillaQt.cpp:80:25: error: ‘iswalnum’ was not declared in this scope; did you mean ‘isalnum’?
   80 |     while(endPos<max && iswalnum(pdoc->CharAt(endPos)))
      |                         ^~~~~~~~
      |                         isalnum
make[1]: *** [Makefile:1220: ScintillaQt.o] Errore 1
make[1]: uscita dalla directory «/home/mte90/Desktop/kde/SciTEQt/scintilla/qt/ScintillaEditBase»
make: *** [Makefile:48: sub-scintilla-qt-ScintillaEditBase-make_first] Errore 2

Maybe Qt is not the only dependence required as now?

@mneuroth
Copy link
Owner

mneuroth commented May 3, 2021

Thank you for your feedback!
I commited an additional include for this runtime function. Please synchronize your repository with the updated github repository and try to compile the app with Debian again. It is strange, that this compile error does not occure on the GitHub Actions build node for Linux (which uses Ubuntu 20.04).

@Mte90
Copy link
Author

Mte90 commented May 4, 2021

I got this but the compilation worked:

/usr/bin/ld: loslib.o: in function `os_tmpname':
loslib.c:(.text+0x3b1): attenzione: the use of `tmpnam' is dangerous, better use `mkstemp'

Running the binary with ./SciTEQt/scite/qt/sciteqt:

qrc:/app.qml:3067:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:3051:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/ParametersDialogWindow.qml:36:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:3015:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:2991:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/AbbreviationDialogWindow.qml:30:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:2957:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:2928:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/TabSizeDialogWindow.qml:34:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:2889:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:2865:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/GoToDialogWindow.qml:34:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:2831:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:2800:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/FindInFilesDialogWindow.qml:40:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/FindInFilesDialog.qml:88:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/FindInFilesDialog.qml:78:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:2762:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/FindInFilesDialog.qml:88:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/FindInFilesDialog.qml:78:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:2744:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:2733:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/ReplaceDialogWindow.qml:45:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:2704:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:2684:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/FindDialogWindow.qml:40:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:2653:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:2634:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/ScintillaText.qml:223:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/ScintillaText.qml:163:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:2615:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/ScintillaText.qml:223:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/ScintillaText.qml:163:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:2591:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/SupportDialogWindow.qml:24:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:2569:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:2438:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:2303:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:2204:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/ScintillaText.qml:223:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/ScintillaText.qml:163:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/ScintillaText.qml:223:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/ScintillaText.qml:163:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:934:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:853:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/SciteMenuActions.qml:1023:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qrc:/app.qml:611:5: QML Connections: Implicitly defined onFoo properties in Connections are deprecated. Use this syntax instead: function onFoo(<arguments>) { ... }
qml: ========== APP START ============
qrc:/app.qml:1099:9: QML Flow: possible QQuickItem::polish() loop
qrc:/app.qml:1099:9: QML Flow: Flow called polish() inside updatePolish() of Flow
qrc:/app.qml:1099:9: QML Flow: possible QQuickItem::polish() loop
qrc:/app.qml:1099:9: QML Flow: Flow called polish() inside updatePolish() of Flow
qrc:/app.qml:1099:9: QML Flow: possible QQuickItem::polish() loop
qrc:/app.qml:1099:9: QML Flow: Flow called polish() inside updatePolish() of Flow
qrc:/app.qml:1099:9: QML Flow: possible QQuickItem::polish() loop
qrc:/app.qml:1099:9: QML Flow: Flow called polish() inside updatePolish() of Flow
[Repeated multiple times]

Maybe because the QT version is more recent? Anyway the UI is not rendering correctly and I cannot use the app itself.

To compile it I have this tiny script:

#!/usr/bin/env bash

cd SciTEQt
git pull
qmake -r sciteqt.pro
make -j16
make install

@mneuroth
Copy link
Owner

mneuroth commented May 4, 2021

I commited a patch for handling the automatic resizing of the toolbar, which prevented sometimes the initial painting.
Please synchronize your repository and try to compile and start the app again.

@Mte90
Copy link
Author

Mte90 commented May 5, 2021

Yes now works :-D
I just see that make install doesn't do anything so maybe require to be execute in a different folder?

make[1]: ingresso nella directory «/home/mte90/Desktop/kde/SciTEQt/scintilla/qt/ScintillaEditBase»
make[1]: Nessuna operazione da eseguire per «install».
make[1]: uscita dalla directory «/home/mte90/Desktop/kde/SciTEQt/scintilla/qt/ScintillaEditBase»
cd scite/qt/ && ( test -e Makefile || /usr/lib/qt5/bin/qmake -o Makefile /home/mte90/Desktop/kde/SciTEQt/scite/qt/qt.pro ) && make -f Makefile install
make[1]: ingresso nella directory «/home/mte90/Desktop/kde/SciTEQt/scite/qt»
make[1]: Nessuna operazione da eseguire per «install».
make[1]: uscita dalla directory «/home/mte90/Desktop/kde/SciTEQt/scite/qt»

@mneuroth
Copy link
Owner

mneuroth commented May 6, 2021

I commited an improvement of the installation step for linux. Now the installation (as root) should be available for linux.

@mneuroth mneuroth closed this as completed May 6, 2021
@Mte90
Copy link
Author

Mte90 commented May 7, 2021

Now works, thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants