UltraStar-Deluxe / UltraStar-Creator

UltraStar Creator
GNU General Public License v2.0
31 stars 18 forks source link

Can't build #16

Closed jmfergeau closed 1 year ago

jmfergeau commented 1 year ago

As title says. Here's the logs:

g++ -c -pipe -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -Wp,-D_GLIBCXX_ASSERTIONS -std=gnu++11 -flto -fno-fat-lto-objects -Wall -Wextra -D_REENTRANT -fPIC -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I. -I. -Imonty -Isong -Isupport -Iui -I../include/bass -I../include/bass_fx -I../include/cld2/public -I../include/srtparser -I/usr/include/taglib -I/usr/include/qt -I/usr/include/qt/QtWidgets -I/usr/include/qt/QtGui -I/usr/include/qt/QtNetwork -I/usr/include/qt/QtCore -Itmp/release -Iui -I/usr/lib/qt/mkspecs/linux-g++ -o tmp/release/QUMainWindow.o QUMainWindow.cpp
Dans le fichier inclus depuis QUMainWindow.cpp:33:
../include/srtparser/srtparser.h: Dans le destructeur « virtual SubRipParser::~SubRipParser() »:
../include/srtparser/srtparser.h:267:19: attention: comparaison d'expressions entières de types signés différents: « int » et « std::vector<SubtitleItem*>::size_type » {aka « long unsigned int »} [-Wsign-compare]
  267 |     for(int i=0;i != _subtitles.size();++i)
      |                 ~~^~~~~~~~~~~~~~~~~~~~
QUMainWindow.cpp: Dans la fonction membre « void QUMainWindow::initConfig() »:
QUMainWindow.cpp:289:17: attention: accolades suggérées autour du corps vide d'une instruction « if » [-Wempty-body]
  289 |                 ;//_menu->langPtBtn->setChecked(true);
      |                 ^
QUMainWindow.cpp: Dans la fonction membre « bool QUMainWindow::on_pushButton_SaveToFile_clicked() »:
QUMainWindow.cpp:391:13: erreur: « class QTextStream » n'a pas de membre nommé « setEncoding »
  391 |         out.setEncoding(QStringConverter::Utf8);
      |             ^~~~~~~~~~~
QUMainWindow.cpp:391:25: erreur: « QStringConverter » n'a pas été déclaré
  391 |         out.setEncoding(QStringConverter::Utf8);
      |                         ^~~~~~~~~~~~~~~~
QUMainWindow.cpp: Dans la fonction membre « void QUMainWindow::setDefaultPitch(int) »:
QUMainWindow.cpp:520:40: attention: paramètre « pitch » inutilisé [-Wunused-parameter]
  520 | void QUMainWindow::setDefaultPitch(int pitch) {
      |                                    ~~~~^~~~~
QUMainWindow.cpp: Dans la fonction membre « void QUMainWindow::on_pushButton_BrowseSubtitles_clicked() »:
QUMainWindow.cpp:939:54: erreur: « round » n'est pas un membre de « std »
  939 |                                 int startbeat = std::round((starttime - GAP) * BPM / 15000.0);
      |                                                      ^~~~~
QUMainWindow.cpp:940:52: erreur: « round » n'est pas un membre de « std »
  940 |                                 int endbeat = std::round((endtime - GAP) * BPM / 15000.0);
      |                                                    ^~~~~
QUMainWindow.cpp:858:32: attention: variable « cld2_lang » inutilisée [-Wunused-variable]
  858 |                 CLD2::Language cld2_lang = CLD2::DetectLanguageSummary(subLyrics.toStdString().c_str(), subLyrics.length(), false, language3, percent3, &text_bytes, &isReliable);
      |                                ^~~~~~~~~
QUMainWindow.cpp:927:21: attention: variable « prevendbeat » inutilisée [-Wunused-variable]
  927 |                 int prevendbeat = 0;
      |                     ^~~~~~~~~~~
QUMainWindow.cpp: Dans la fonction membre « bool QUMainWindow::determineLanguage(QString) »:
QUMainWindow.cpp:1453:24: attention: variable « cld2_lang » inutilisée [-Wunused-variable]
 1453 |         CLD2::Language cld2_lang = CLD2::DetectLanguageSummary(lyrics.toStdString().c_str(), lyrics.length(), false, language3, percent3, &text_bytes, &isReliable);
      |                        ^~~~~~~~~
QUMainWindow.cpp: Dans la fonction membre « void QUMainWindow::generateFreestyleTextFiles() »:
QUMainWindow.cpp:1959:37: erreur: « class QTextStream » n'a pas de membre nommé « setEncoding »
 1959 |                                 out.setEncoding(QStringConverter::Utf8);
      |                                     ^~~~~~~~~~~
QUMainWindow.cpp:1959:49: erreur: « QStringConverter » n'a pas été déclaré
 1959 |                                 out.setEncoding(QStringConverter::Utf8);
      |                                                 ^~~~~~~~~~~~~~~~
QUMainWindow.cpp: Dans la fonction membre « QString QUMainWindow::syllabifyLyrics(QString, QString) »:
QUMainWindow.cpp:2037:28: erreur: « class QTextStream » n'a pas de membre nommé « setEncoding »
 2037 |                         in.setEncoding(QStringConverter::Utf8);
      |                            ^~~~~~~~~~~
QUMainWindow.cpp:2037:40: erreur: « QStringConverter » n'a pas été déclaré
 2037 |                         in.setEncoding(QStringConverter::Utf8);
      |                                        ^~~~~~~~~~~~~~~~
QUMainWindow.cpp: Dans la fonction membre « void QUMainWindow::montyTalk(bool) »:
QUMainWindow.cpp:2262:35: attention: paramètre « force » inutilisé [-Wunused-parameter]
 2262 | void QUMainWindow::montyTalk(bool force) {
      |                              ~~~~~^~~~~
QUMainWindow.cpp: Dans la fonction membre « virtual void QUMainWindow::keyReleaseEvent(QKeyEvent*) »:
QUMainWindow.cpp:1750:73: attention: cette instruction peut poursuivre son chemin [-Wimplicit-fallthrough=]
 1750 |                             QUMainWindow::on_pushButton_Tap_released();
      |                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~

QUMainWindow.cpp:1751:25: note: ici
 1751 |                         default: QWidget::keyPressEvent(event);
      |                         ^~~~~~~
make: *** [Makefile:1292 : tmp/release/QUMainWindow.o] Erreur 1

thanks

jmfergeau commented 1 year ago

Still can't build, same error.

bohning commented 1 year ago

Which Qt version are you using?

schrmh commented 1 year ago

@bohning I get the same output, seems like a general problem for Arch users. qtdiag | head -n1

Qt 5.15.8 (x86_64-little_endian-lp64 shared (dynamic) release build; by GCC 12.2.1 20230201) on "xcb"

qmake --version

QMake version 3.1
Using Qt version 5.15.8 in /usr/lib

make --version

GNU Make 4.4.1
Built for x86_64-pc-linux-gnu
Copyright (C) 1988-2023 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
schrmh commented 1 year ago

What I think is the problem: It complains about QStringConverter which is a Qt6 thing (I indeed have qt6 packages installed): https://www.qt.io/blog/porting-from-qt-5-to-qt-6-using-qt5compat-library But qmake might not work for that? https://www.qt.io/blog/qt-6-build-system https://doc.qt.io/qt-6/qt6-buildsystem.html

jmfergeau commented 1 year ago

I use same version as @schrmh. I'm indeed on arch. I'm actually the AUR package maintainer for ultrastar-creator lol

irgendwr commented 1 year ago

@jmfergeau I managed to get the AUR package working again by changing qmake to qmake6 in the PKGBUILD. Since it requires qt-6 now, the dependencies also need to be changed from 'qt5-base' 'qt5-tools' to 'qt6-base' 'qt6-tools'.

Also note that you will need to delete src/UltraStar-Creator/src/tmp and src/UltraStar-Creator/src/ui prior to rebuilding (or start out with a fresh clone).

schrmh commented 1 year ago

That there really is a qmake6... I did not find anything about that when searching for "qmake qt6". I searched on the documentation site and it looks like the only mentions of that in the Qt documentation are here in a simple side note...: https://doc.qt.io/qt-6/qmake-running.html https://doc.qt.io/qt-6/qmake-tutorial.html

jmfergeau commented 1 year ago

Building with qt6 worked for me. I updated the AUR package. Thanks again, @irgendwr