rrwick / Bandage

a Bioinformatics Application for Navigating De novo Assembly Graphs Easily
http://rrwick.github.io/Bandage/
GNU General Public License v3.0
585 stars 98 forks source link

Packaging and compiling Bandage #112

Open V-Z opened 2 years ago

V-Z commented 2 years ago

Hello, I'm packaging Bandage for openSUSE GNU/Linux and generally it works smoothly, I just get compilation error for older distribution releases:

...
program/main.cpp:173:53: error: 'endl' is not a member of 'Qt'
             out << getBandageTitleAsciiArt() << Qt::endl;
                                                     ^~~~
program/main.cpp:173:53: note: suggested alternatives:
In file included from /usr/include/qt5/QtCore/QTextStream:1:0,
                 from program/main.cpp:24:
/usr/include/qt5/QtCore/qtextstream.h:260:28: note:   'endl'
 Q_CORE_EXPORT QTextStream &endl(QTextStream &s);
                            ^~~~
In file included from /usr/include/c++/7/iterator:64:0,
                 from /usr/include/qt5/QtCore/qbytearray.h:53,
                 from /usr/include/qt5/QtCore/qstring.h:49,
                 from /usr/include/qt5/QtCore/qobject.h:47,
                 from /usr/include/qt5/QtWidgets/qwidget.h:45,
                 from /usr/include/qt5/QtWidgets/qmainwindow.h:44,
                 from /usr/include/qt5/QtWidgets/QMainWindow:1,
                 from program/../ui/mainwindow.h:22,
                 from program/main.cpp:19:
/usr/include/c++/7/ostream:590:5: note:   'std::endl'
     endl(basic_ostream<_CharT, _Traits>& __os)
     ^~~~
make: *** [Makefile:1240: main.o] Error 1
make: *** Waiting for unfinished jobs....
g++ -c -fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -g -DOPENSSL_LOAD_CONF -O2 -std=gnu++11 -Wall -W -D_REENTRANT -fPIC -DAPP_VERSION=\"0.9.0\" -DQT_NO_DEBUG -DQT_SVG_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I. -Iui -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtSvg -isystem /usr/include/qt5/QtWidgets -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtCore -I. -I. -I/usr/lib64/qt5/mkspecs/linux-g++ -o debruijnedge.o graph/debruijnedge.cpp
g++ -c -fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -g -DOPENSSL_LOAD_CONF -O2 -std=gnu++11 -Wall -W -D_REENTRANT -fPIC -DAPP_VERSION=\"0.9.0\" -DQT_NO_DEBUG -DQT_SVG_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I. -Iui -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtSvg -isystem /usr/include/qt5/QtWidgets -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtCore -I. -I. -I/usr/lib64/qt5/mkspecs/linux-g++ -o debruijnnode.o graph/debruijnnode.cpp
g++ -c -fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -g -DOPENSSL_LOAD_CONF -O2 -std=gnu++11 -Wall -W -D_REENTRANT -fPIC -DAPP_VERSION=\"0.9.0\" -DQT_NO_DEBUG -DQT_SVG_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I. -Iui -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtSvg -isystem /usr/include/qt5/QtWidgets -isystem /usr/include/qt5/QtGui -isystem /usr/include/qt5/QtCore -I. -I. -I/usr/lib64/qt5/mkspecs/linux-g++ -o graphicsitemnode.o graph/graphicsitemnode.cpp
error: Bad exit status from /var/tmp/rpm-tmp.x2L2Bs (%build)

Version 0.8.1 worked fine with openSUSE 15.3. I'm not sure where this came from, if I could patch it somehow or some upstram fix would be better. With 0.8.1 i was using %qmake5 "QMAKE_CFLAGS_ISYSTEM = ''" Bandage.pro for older releases instead of "plain" %qmake5 Bandage.pro, but here it has no effect. Any idea what could went wrong?