Knotter icon indicating copy to clipboard operation
Knotter copied to clipboard

Trouble building from source

Open olejorgenb opened this issue 8 years ago • 3 comments

$ git clone 'https://github.com/mbasaglia/Knotter.git'
$ cd Knotter
$ ./pull.sh
$ ./configure.sh
$ make
    In file included from src/dialogs/dialog_preferences.hpp:30:0,
                 from src/dialogs/main_window.hpp:46,
                 from src/dialogs/main_window.cpp:26:
src/generated/ui_dialog_preferences.h: At global scope:
src/generated/ui_dialog_preferences.h:106:5: error: ‘Color_Selector’ does not name a type
     Color_Selector *color_node_selected;

$ grep -R Color_Selector
<snip..>
# src/widgets/color/refactor.sh:    Color_Selector

Seems like the dependencies and the main source is out of sync?

olejorgenb avatar Oct 03 '16 21:10 olejorgenb

pull.sh pulls the latest version of all submodules, it was meant to be used when they were being developed at the same rate as Knotter itself. Now you should just update modules using git

git pull && git submodule update --init

mbasaglia avatar Oct 04 '16 06:10 mbasaglia

Thanks. Now I get

<snip>
                 from src/generated/ui_main_window.h:12,
                 from src/dialogs/main_window.hpp:29,
                 from src/dialogs/main_window.cpp:26:
/usr/include/qt/QtCore/qmetatype.h: In instantiation of ‘constexpr int qMetaTypeId() [with T = Color_Preview::Display_Mode]’:
/usr/include/qt/QtCore/qvariant.h:502:35:   required from ‘QVariant qVariantFromValue(const T&) [with T = Color_Preview::Display_Mode]’
/usr/include/qt/QtCore/qvariant.h:356:31:   required from ‘static QVariant QVariant::fromValue(const T&) [with T = Color_Preview::Display_Mode]’
src/generated/ui_export_image_dialog.h:223:98:   required from here

/usr/include/qt/QtCore/qmetatype.h:1745:5: error: static assertion failed: Type is not registered, please use the Q_DECLARE_METATYPE macro to make it known to Qt's meta-object system
     Q_STATIC_ASSERT_X(QMetaTypeId2<T>::Defined, "Type is not registered, please use the Q_DECLARE_METATYPE macro to make it known to Qt's meta-object system");

But I guess that might have something to do with my qt version

QMake version 3.0
Using Qt version 5.7.0 in /usr/lib

I'll try to try a bit more before reporting back

olejorgenb avatar Oct 04 '16 12:10 olejorgenb

hmm yeah I had a similar report not long ago on the widget library, but it isn't something I can reproduce on my system. This is the issue: https://github.com/mbasaglia/Qt-Color-Widgets/issues/19 I think they used this patch: https://github.com/mbasaglia/Qt-Color-Widgets/files/449227/Qt5.6-metatype.patch.txt You basically have to add this line in color_preview.hpp

Q_DECLARE_METATYPE(color_widgets::Color_Preview::Display_Mode)

Once I have time I should fix this in color widgets and update Knotter to match it.

mbasaglia avatar Oct 05 '16 20:10 mbasaglia