Fedora 28 - Compiler Error w/ GCC 8.1 - flatbuffers
#1
Hello , 
I want to compile latest kodi 18 from git at Fedora 28 ,
when I tried to build it and install flatbuffers:

sudo make -C tools/depends/target/flatbuffers PREFIX=/usr/local

I got error message:
 
Quote:sudo make -C tools/depends/target/flatbuffers PREFIX=/usr/local
make: Wejście do katalogu '/home/grek/src/kodi/tools/depends/target/flatbuffers'
make -C native/build-cmake  install
make[1]: Wejście do katalogu '/home/grek/src/kodi/tools/depends/target/flatbuffers/native/build-cmake'
-- Configuring done
-- Generating done
-- Build files have been written to: /home/grek/src/kodi/tools/depends/target/flatbuffers/native/build-cmake
make[2]: Wejście do katalogu '/home/grek/src/kodi/tools/depends/target/flatbuffers/native/build-cmake'
make[3]: Wejście do katalogu '/home/grek/src/kodi/tools/depends/target/flatbuffers/native/build-cmake'
Scanning dependencies of target flatc
make[3]: Opuszczenie katalogu '/home/grek/src/kodi/tools/depends/target/flatbuffers/native/build-cmake'
make[3]: Wejście do katalogu '/home/grek/src/kodi/tools/depends/target/flatbuffers/native/build-cmake'
[  5%] Building CXX object CMakeFiles/flatc.dir/src/code_generators.cpp.o
In file included from /home/grek/src/kodi/tools/depends/target/flatbuffers/native/include/flatbuffers/flexbuffers.h:24,
                 from /home/grek/src/kodi/tools/depends/target/flatbuffers/native/include/flatbuffers/idl.h:26,
                 from /home/grek/src/kodi/tools/depends/target/flatbuffers/native/include/flatbuffers/code_generators.h:22,
                 from /home/grek/src/kodi/tools/depends/target/flatbuffers/native/src/code_generators.cpp:17:
/home/grek/src/kodi/tools/depends/target/flatbuffers/native/include/flatbuffers/util.h: In function ‘int flatbuffers::FromUTF8(const char**)’:
/home/grek/src/kodi/tools/depends/target/flatbuffers/native/include/flatbuffers/util.h:324:45: error: type qualifiers ignored on cast result type [-Werror=ignored-qualifiers]
   if ((static_cast<const unsigned char>(**in) << len) & 0x80) return -1;  // Bit after leading 1's must be 0.
                                             ^
cc1plus: all warnings being treated as errors
make[3]: *** [CMakeFiles/flatc.dir/build.make:63: CMakeFiles/flatc.dir/src/code_generators.cpp.o] Błąd 1
make[3]: Opuszczenie katalogu '/home/grek/src/kodi/tools/depends/target/flatbuffers/native/build-cmake'
make[2]: *** [CMakeFiles/Makefile2:68: CMakeFiles/flatc.dir/all] Błąd 2
make[2]: Opuszczenie katalogu '/home/grek/src/kodi/tools/depends/target/flatbuffers/native/build-cmake'
make[1]: *** [Makefile:130: all] Błąd 2
make[1]: Opuszczenie katalogu '/home/grek/src/kodi/tools/depends/target/flatbuffers/native/build-cmake'
make: *** [Makefile:56: .installed-native] Błąd 2
make: Opuszczenie katalogu '/home/grek/src/kodi/tools/depends/target/flatbuffers'

Here I found solution that latest version of flatbuffers is fixed

https://github.com/google/flatbuffers/issues/4741

I worked with this version, and I successfully build this depends ,but after all I want to build kodi and I got another errors ,related with flatbuffers and RetroPlayer

 
Quote:In file included from /home/grek/src/kodi/xbmc/cores/RetroPlayer/savestates/SavestateFlatBuffer.cpp:12:
/home/grek/src/kodi-build/build/cores/RetroPlayer/messages/savestate_generated.h: In member function ‘bool KODI::RETRO::Savestate::Verify(flatbuffers::Verifier&) const’:
/home/grek/src/kodi-build/build/cores/RetroPlayer/messages/savestate_generated.h:99:35: error: no matching function for call to ‘flatbuffers::Verifier::Verify(const flatbuffers::String*)’
            verifier.Verify(label()) &&

and finaly its exits at 48%
Quote:[ 48%] Linking CXX static library settings.a
cd /home/grek/src/kodi-build/build/settings && /usr/bin/cmake -P CMakeFiles/settings.dir/cmake_clean_target.cmake
cd /home/grek/src/kodi-build/build/settings && /usr/bin/cmake -E cmake_link_script CMakeFiles/settings.dir/link.txt --verbose=1
/usr/bin/ccache /usr/bin/ar qc settings.a  CMakeFiles/settings.dir/AdvancedSettings.cpp.o CMakeFiles/settings.dir/DisplaySettings.cpp.o CMakeFiles/settings.dir/GameSettings.cpp.o CMakeFiles/settings.dir/LibExportSettings.cpp.o CMakeFiles/settings.dir/MediaSettings.cpp.o CMakeFiles/settings.dir/MediaSourceSettings.cpp.o CMakeFiles/settings.dir/SettingAddon.cpp.o CMakeFiles/settings.dir/SettingConditions.cpp.o CMakeFiles/settings.dir/SettingControl.cpp.o CMakeFiles/settings.dir/SettingCreator.cpp.o CMakeFiles/settings.dir/SettingDateTime.cpp.o CMakeFiles/settings.dir/SettingPath.cpp.o CMakeFiles/settings.dir/Settings.cpp.o CMakeFiles/settings.dir/SettingsBase.cpp.o CMakeFiles/settings.dir/SettingUtils.cpp.o CMakeFiles/settings.dir/SkinSettings.cpp.o CMakeFiles/settings.dir/DiscSettings.cpp.o
/usr/bin/ccache /usr/bin/ranlib settings.a
gmake[2]: Opuszczenie katalogu '/home/grek/src/kodi-build'
[ 48%] Built target settings
gmake[1]: Opuszczenie katalogu '/home/grek/src/kodi-build'
gmake: *** [Makefile:141: all] Błąd 2
Reply
#2
Retry with the following change or use internal flatbuffers. The author, who added this dependency, is informed.
Code:
--- a/tools/depends/target/flatbuffers/Makefile
+++ b/tools/depends/target/flatbuffers/Makefile
@@ -49,6 +49,7 @@ ifeq ($(PREFIX),)
endif
        rm -rf $(PLATFORM)/*; mkdir -p $(PLATFORM)
        cd $(PLATFORM); $(ARCHIVE_TOOL) $(ARCHIVE_TOOL_FLAGS) $(TARBALLS_LOCATION)/$(ARCHIVE)
+       cd $(PLATFORM); patch -p1 -i ../../../native/flatbuffers-native/0001-Fix-compiler-warning.patch
        mkdir -p $(BUILDDIR)
        cd $(BUILDDIR); $(CMAKE) $(CMAKE_OPTIONS) ..

(2018-08-21, 15:11)grek Wrote: https://github.com/google/flatbuffers/issues/4741

I worked with this version, and I successfully build this depends ,but after all I want to build kodi and I got another errors ,related with flatbuffers and RetroPlayer

We only support stable versions of libraries used by Kodi, no development artefacts.
Reply
#3
Thank You Rechi,

It works for me,
I have successfully build kodi from src Smile
Reply
#4
@grek just submitted https://github.com/xbmc/xbmc/pull/14334
RetroPlayer releases: https://github.com/garbear/xbmc/releases

Donations: eigendude.eth
Reply

Logout Mark Read Team Forum Stats Members Help
Fedora 28 - Compiler Error w/ GCC 8.1 - flatbuffers0