Linux Nexus - error: no matching function for call to ‘KODI::RETRO::Savestate::VerifyField< - Printable Version +- Kodi Community Forum (https://forum.kodi.tv) +-- Forum: Development (https://forum.kodi.tv/forumdisplay.php?fid=32) +--- Forum: Kodi Application (https://forum.kodi.tv/forumdisplay.php?fid=93) +---- Forum: RetroPlayer Development (https://forum.kodi.tv/forumdisplay.php?fid=194) +---- Thread: Linux Nexus - error: no matching function for call to ‘KODI::RETRO::Savestate::VerifyField< (/showthread.php?tid=371064) |
Nexus - error: no matching function for call to ‘KODI::RETRO::Savestate::VerifyField< - expertup - 2023-01-02 Here is a clear and concise description of what the problem is: While compile KODI 19.90 (Nexus) I have error with VerifyField<uint64_t> in file xbmc/cores/RetroPlayer/savestates/SavestateFlatBuffer.cpp On KODI Matrix 19.5 compilation runs fine with no errors. Steps to reproduce the behavior:
Operating system version/name: No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 22.10 Release: 22.10 Codename: kinetic Kodi version: APP_NAME Kodi COMPANY_NAME XBMC Foundation COPYRIGHT_YEARS 2005-2021 WEBSITE http://kodi.tv VERSION_MAJOR 20 VERSION_MINOR 0 VERSION_TAG RC2 VERSION_CODE 19.90.905 ADDON_API 19.90.905 ADDON_REPOS repository.xbmc.org|https://mirrors.kodi.tv APP_PACKAGE org.xbmc.kodi PACKAGE_IDENTITY XBMCFoundation.Kodi PACKAGE_PUBLISHER C62BD90A-CDD8-477F-96C3-B25992247B97 PACKAGE_DESCRIPTION Kodi is an open source (GPL) software media center for playing videos, music, pictures, games, and more. Logs: https://paste.kodi.tv/nayinizuze.kodi RE: Nexus - error: no matching function for call to ‘KODI::RETRO::Savestate::VerifyField< - Fuzzard - 2023-01-02 You'll need to show more logs for any help i would think. Technically Nexus is built every second night for all platforms (including linux). These builds use a slightly different way to build the flatc compiler, but nothing that i would think would cause such an issue. I would think you would be best to show the cmake generation step at a minimum (looking for flatc version in particular) as well as where the flatbuffers headers are coming from. Maybe its pulling in an old set of flatbuffer headers that doesnt match what we use (flatbuffers 2.0.0) RE: Nexus - error: no matching function for call to ‘KODI::RETRO::Savestate::VerifyField< - expertup - 2023-01-03 I found this answer: https://stackoverflow.com/a/64561502/1891446 And compilation is succesfull. The answer by Olexandr is only for the flatc binary. To build & install all of flatbuffers from source using cmake, follow the instructions here: Clone the repo (https://github.com/google/flatbuffers.git) Code: cd flatbuffers Code: cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release Code: make Code: sudo make install Code: Install the project... RE: Nexus - error: no matching function for call to ‘KODI::RETRO::Savestate::VerifyField< - garbear - 2023-01-05 Thanks for posting your solution! The problem happens when mixing versions between flatbuffers 1 (used in v19 Matrix) and flatbuffers 2 (used in V20 Nexus). To avoid the need to manage system flatbuffer versions, I use the "-DENABLE_INTERNAL_FLATBUFFERS=ON" CMake option when building kodi: Code: cd kodi/build RE: Nexus - error: no matching function for call to ‘KODI::RETRO::Savestate::VerifyField< - expertup - 2023-01-05 Because I need to reinstall ubuntu - I was having problems with bluetooth headphones, sound was stuttering and I messed up a lot with pulseaudo, alsa and wirepipe - I found in the command history that I couldn't install `flatbuffers-dev`. When trying to install, I got a message that no "candidate" for installation was found, so I skipped them. I think that was the cause of the whole problem. Hence, compiling these libraries on my system allowed them to install and solve the problem. RE: Nexus - error: no matching function for call to ‘KODI::RETRO::Savestate::VerifyField< - fbacher - 2023-01-06 I have been fighting this problem for the past day since I reinstalled my Ubuntu 22.10 system to fix a frequent crash problem/corrupted system yesterday. I am sure that a few things are not installed exactly like they were before. I'll give the solution here a try. The ENABLE_INTERNAL_FLATBUFFERS solution did not help. I tried a few more build attempts with the flatbuffers from Kodi's repository. I built with the INTERNAL_FLAT_BUFFERS. I built using the old fashioned separate :make -C tools/depends...flatbuffers. I built with PREFIX=(not /usr/local, my normal way). I tried with it going to /usr/local/. Only when I manually built flat buffers using instructions here and sending to /usr/local/include did it work. I have not bothered to compare the sources. RE: Nexus - error: no matching function for call to ‘KODI::RETRO::Savestate::VerifyField< - tutu - 2023-01-16 Flatbuffers is available in kinetic it's called libflatbuffers-dev (v2.0.6) https://packages.ubuntu.com/kinetic/arm64/libflatbuffers-dev/filelist This doesn't help me however (see https://forum.kodi.tv/showthread.php?tid=371204&pid=3132594#pid3132594) I am getting the same compilation issue in Nexus: Quote:In file included from /home/xbmc/kodi/xbmc/cores/RetroPlayer/savestates/SavestateFlatBuffer.cpp:12: RE: Nexus - error: no matching function for call to ‘KODI::RETRO::Savestate::VerifyField< - tutu - 2023-01-16 I believe I have resolved this issue, however I cannot test it properly yet as I am unable to build/link kodi. https://github.com/xbmc/xbmc/pull/22493 RE: Nexus - error: no matching function for call to ‘KODI::RETRO::Savestate::VerifyField< - expertup - 2023-01-21 (2023-01-16, 22:49)tutu Wrote: I believe I have resolved this issue, however I cannot test it properly yet as I am unable to build/link kodi. This resolve work for me |