easymodo / qimgv

Image viewer. Fast, easy to use. Optional video support.
GNU General Public License v3.0
2.37k stars 167 forks source link

Build fails on Haiku #125

Open diversys opened 4 years ago

diversys commented 4 years ago

uname -a Haiku shredder 1 hrev53538 Oct 10 2019 19:36:38 x86_64 x86_64 Haiku

~/qimgv/build> make -i
[  1%] Automatic MOC and UIC for target qimgv
[  1%] Built target qimgv_autogen
[  2%] Building CXX object qimgv/CMakeFiles/qimgv.dir/components/directorymanager/directorymanager.cpp.o
/boot/home/qimgv/qimgv/components/directorymanager/directorymanager.cpp: In member function 'void DirectoryManager::generateFileList()':
/boot/home/qimgv/qimgv/components/directorymanager/directorymanager.cpp:364:52: error: expected unqualified-id before '::' token
             } catch (const std::filesystem::__cxx11::filesystem_error &err) {
                                                    ^~
/boot/home/qimgv/qimgv/components/directorymanager/directorymanager.cpp:364:52: error: expected ')' before '::' token
             } catch (const std::filesystem::__cxx11::filesystem_error &err) {
                     ~                              ^~
                                                    )
/boot/home/qimgv/qimgv/components/directorymanager/directorymanager.cpp:364:52: error: expected '{' before '::' token
             } catch (const std::filesystem::__cxx11::filesystem_error &err) {
                                                    ^~
/boot/home/qimgv/qimgv/components/directorymanager/directorymanager.cpp:364:54: error: '::filesystem_error' has not been declared
             } catch (const std::filesystem::__cxx11::filesystem_error &err) {
                                                      ^~~~~~~~~~~~~~~~
/boot/home/qimgv/qimgv/components/directorymanager/directorymanager.cpp:364:54: note: suggested alternative:
In file included from /boot/system/develop/tools/lib/gcc/x86_64-unknown-haiku/8.3.0/include/c++/filesystem:37,
                 from /boot/home/qimgv/qimgv/components/directorymanager/directorymanager.h:16,
                 from /boot/home/qimgv/qimgv/components/directorymanager/directorymanager.cpp:1:
/boot/system/develop/tools/lib/gcc/x86_64-unknown-haiku/8.3.0/include/c++/bits/fs_path.h:614:9: note:   'std::filesystem::filesystem_error'
   class filesystem_error : public std::system_error
         ^~~~~~~~~~~~~~~~
/boot/home/qimgv/qimgv/components/directorymanager/directorymanager.cpp:364:72: error: 'err' was not declared in this scope
             } catch (const std::filesystem::__cxx11::filesystem_error &err) {
                                                                        ^~~
/boot/home/qimgv/qimgv/components/directorymanager/directorymanager.cpp:364:72: note: suggested alternative: 'errno'
             } catch (const std::filesystem::__cxx11::filesystem_error &err) {
                                                                        ^~~
                                                                        errno
[  2%] Building CXX object qimgv/CMakeFiles/qimgv.dir/components/directorymanager/watchers/linux/linuxwatcher.cpp.o
/boot/home/qimgv/qimgv/components/directorymanager/watchers/linux/linuxwatcher.cpp:3:10: fatal error: sys/inotify.h: No such file or directory
 #include <sys/inotify.h>
          ^~~~~~~~~~~~~~~
compilation terminated.
[  3%] Linking CXX executable qimgv
c++: error: CMakeFiles/qimgv.dir/components/directorymanager/directorymanager.cpp.o: No such file or directory
c++: error: CMakeFiles/qimgv.dir/components/directorymanager/watchers/linux/linuxwatcher.cpp.o: No such file or directory
[ 94%] Built target qimgv
[ 95%] Automatic MOC and UIC for target qimgv_player_mpv
[ 95%] Built target qimgv_player_mpv_autogen
[ 96%] Building CXX object qimgv_libs/qimgv_player_mpv/CMakeFiles/qimgv_player_mpv.dir/qimgv_player_mpv_autogen/mocs_compilation.cpp.o
In file included from /boot/home/qimgv/build/qimgv_libs/qimgv_player_mpv/qimgv_player_mpv_autogen/UVLADIE3JM/moc_mpvwidget.cpp:10,
                 from /boot/home/qimgv/build/qimgv_libs/qimgv_player_mpv/qimgv_player_mpv_autogen/mocs_compilation.cpp:2:
/boot/home/qimgv/build/qimgv_libs/qimgv_player_mpv/qimgv_player_mpv_autogen/UVLADIE3JM/../../../../../qimgv_libs/qimgv_player_mpv/src/mpvwidget.h:5:10: fatal error: mpv/client.h: No such file or directory
 #include <mpv/client.h>
          ^~~~~~~~~~~~~~
compilation terminated.
[ 97%] Building CXX object qimgv_libs/qimgv_player_mpv/CMakeFiles/qimgv_player_mpv.dir/src/mpvwidget.cpp.o
In file included from /boot/home/qimgv/qimgv_libs/qimgv_player_mpv/src/mpvwidget.cpp:1:
/boot/home/qimgv/qimgv_libs/qimgv_player_mpv/src/mpvwidget.h:5:10: fatal error: mpv/client.h: No such file or directory
 #include <mpv/client.h>
          ^~~~~~~~~~~~~~
compilation terminated.
[ 98%] Building CXX object qimgv_libs/qimgv_player_mpv/CMakeFiles/qimgv_player_mpv.dir/src/videoplayermpv.cpp.o
In file included from /boot/home/qimgv/qimgv_libs/qimgv_player_mpv/src/videoplayermpv.cpp:2:
/boot/home/qimgv/qimgv_libs/qimgv_player_mpv/src/mpvwidget.h:5:10: fatal error: mpv/client.h: No such file or directory
 #include <mpv/client.h>
          ^~~~~~~~~~~~~~
compilation terminated.
[ 99%] Linking CXX shared library libqimgv_player_mpv.so
c++: error: CMakeFiles/qimgv_player_mpv.dir/qimgv_player_mpv_autogen/mocs_compilation.cpp.o: No such file or directory
c++: error: CMakeFiles/qimgv_player_mpv.dir/src/mpvwidget.cpp.o: No such file or directory
c++: error: CMakeFiles/qimgv_player_mpv.dir/src/videoplayermpv.cpp.o: No such file or directory
cmake -E touch_nocreate: failed to update "qimgv_libs/qimgv_player_mpv/libqimgv_player_mpv.so".
[100%] Built target qimgv_player_mpv
~/qimgv/build> 
easymodo commented 4 years ago

It builds, but the keyboard input is borked (qt does not return native scan codes for key events). Mac has the same problem, so i'll have to look for a solution eventually..