grahamrow / Muview2

3D visualization of micromagnetic simulation data from Mumax or OOMMF
GNU General Public License v2.0
41 stars 8 forks source link

Build fails on ubuntu 14.04 #11

Closed barnex closed 10 years ago

barnex commented 10 years ago

@master Muview2> git log --pretty=oneline | head -n 1 2de35ad3a703ef6f8d6f8542520a56f59aca9633 Fixed bug from issue #10 where the app didn't properly handle loading a directory that doesn't contain any .omf or .ovf files @master Muview2> make clean && qmake && make cd source/ && ( test -e Makefile || /usr/lib/x86_64-linux-gnu/qt5/bin/qmake /home/arne/src/github.com/grahamrow/Muview2/source/source.pro -o Makefile ) && make -f Makefile clean make[1]: Entering directory /home/arne/src/github.com/grahamrow/Muview2/source' rm -f qrc_resources.cpp rm -f mocs/moc_glwidget.cpp mocs/moc_qxtspanslider.cpp mocs/moc_qxtspanslider_p.cpp mocs/moc_preferences.cpp mocs/moc_aboutdialog.cpp mocs/moc_window.cpp rm -f uics/ui_preferences.h uics/ui_window.h uics/ui_aboutdialog.h rm -f objs/matrix.o objs/main.o objs/window.o objs/glwidget.o objs/glwidget_input.o objs/glwidget_assets.o objs/qxtspanslider.o objs/preferences.o objs/aboutdialog.o objs/OMFImport.o objs/OMFHeader.o objs/qrc_resources.o objs/moc_glwidget.o objs/moc_qxtspanslider.o objs/moc_qxtspanslider_p.o objs/moc_preferences.o objs/moc_aboutdialog.o objs/moc_window.o rm -f *~ core *.core make[1]: Leaving directory/home/arne/src/github.com/grahamrow/Muview2/source' cd source/ && ( test -e Makefile || /usr/lib/x86_64-linux-gnu/qt5/bin/qmake /home/arne/src/github.com/grahamrow/Muview2/source/source.pro -o Makefile ) && make -f Makefile make[1]: Entering directory /home/arne/src/github.com/grahamrow/Muview2/source' /usr/lib/x86_64-linux-gnu/qt5/bin/uic preferences.ui -o uics/ui_preferences.h /usr/lib/x86_64-linux-gnu/qt5/bin/uic window.ui -o uics/ui_window.h /usr/lib/x86_64-linux-gnu/qt5/bin/uic aboutdialog.ui -o uics/ui_aboutdialog.h g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++-64 -I. -I/home/arne/src/github.com/grahamrow/Muview2 -I/usr/include/qt5 -I/usr/include/qt5/QtOpenGL -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/QtGui -I/usr/include/qt5/QtCore -Imocs -Iuics -o objs/matrix.o matrix.cpp g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++-64 -I. -I/home/arne/src/github.com/grahamrow/Muview2 -I/usr/include/qt5 -I/usr/include/qt5/QtOpenGL -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/QtGui -I/usr/include/qt5/QtCore -Imocs -Iuics -o objs/main.o main.cpp g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++-64 -I. -I/home/arne/src/github.com/grahamrow/Muview2 -I/usr/include/qt5 -I/usr/include/qt5/QtOpenGL -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/QtGui -I/usr/include/qt5/QtCore -Imocs -Iuics -o objs/window.o window.cpp In file included from window.cpp:20:0: /home/arne/src/github.com/grahamrow/Muview2/ui_window.h: In member function ‘void Ui_Window::setupUi(QMainWindow*)’: /home/arne/src/github.com/grahamrow/Muview2/ui_window.h:154:46: error: no matching function for call to ‘GLWidget::GLWidget(QWidget*&)’ viewport = new GLWidget(centralwidget); ^ /home/arne/src/github.com/grahamrow/Muview2/ui_window.h:154:46: note: candidates are: In file included from window.cpp:18:0: glwidget.h:27:5: note: GLWidget::GLWidget(const QGLFormat&, QWidget*) GLWidget( const QGLFormat& format, QWidget* parent = 0 ); ^ glwidget.h:27:5: note: no known conversion for argument 1 from ‘QWidget*’ to ‘const QGLFormat&’ glwidget.h:23:7: note: GLWidget::GLWidget(const GLWidget&) class GLWidget : public QGLWidget ^ glwidget.h:23:7: note: no known conversion for argument 1 from ‘QWidget*’ to ‘const GLWidget&’ window.cpp: In constructor ‘Window::Window(QStringList)’: window.cpp:69:9: error: ‘class Ui::Window’ has no member named ‘viewportHorizontalLayout’ ui->viewportHorizontalLayout->insertWidget(1,viewport, 1); ^ window.cpp:130:17: error: ‘class Ui::Window’ has no member named ‘actionIncreaseSubsampling’ connect(ui->actionIncreaseSubsampling, SIGNAL(triggered()), viewport, SLOT(increaseSubsampling())); ^ window.cpp:131:17: error: ‘class Ui::Window’ has no member named ‘actionDecreaseSubsampling’ connect(ui->actionDecreaseSubsampling, SIGNAL(triggered()), viewport, SLOT(decreaseSubsampling())); ^ make[1]: *** [objs/window.o] Error 1 make[1]: Leaving directory/home/arne/src/github.com/grahamrow/Muview2/source' make: *\ [sub-source-make_first] Error 2

grahamrow commented 10 years ago

Thanks for the report Arne. What version of qt5 is this?

barnex commented 10 years ago

@master Muview2> qmake -v QMake version 3.0 Using Qt version 5.2.1 in /usr/lib/x86_64-linux-gnu

grahamrow commented 10 years ago

Hmm. Must be something particular to the version in the Ubuntu repository. It's strange because the error seems to be in the header generated by uic. I'll have to create a virtual machine and test this out. Does the binary still work okay? I'll update it later today so you don't need to compile for the time being.

barnex commented 10 years ago

Nope, binary does not work. Ubuntu provides uic 52 while version 48 is required:

Muview2.1-Linux> md5sum muview 7498d8f55b9c58f76208760655e7ecea muview Muview2.1-Linux> ./muview ./muview: error while loading shared libraries: libicui18n.so.48: cannot open shared object file: No such file or directory Muview2.1-Linux> ldd muview | grep "not found" libicui18n.so.48 => not found libicuuc.so.48 => not found Muview2.1-Linux> (cd / && search libicui) searching in / /usr/lib/x86_64-linux-gnu/libicui18n.a /usr/lib/x86_64-linux-gnu/libicui18n.so /usr/lib/x86_64-linux-gnu/libicui18n.so.52 /usr/lib/x86_64-linux-gnu/libicui18n.so.52.1 /usr/lib/x86_64-linux-gnu/libicuio.a /usr/lib/x86_64-linux-gnu/libicuio.so /usr/lib/x86_64-linux-gnu/libicuio.so.52 /usr/lib/x86_64-linux-gnu/libicuio.so.52.1

grahamrow commented 10 years ago

Compiles fine with Qt 5.3.0 downloaded from qt-project.org. Will include binary specifically for Ubuntu 14.04 in next release.