[SOLVED]VCMI źródła Debian jessie - błąd

#1

Witam.
Mam problem z budowaniem VCMI ze źródła.
Vcmi 0.94 bez problemu budowało się z opcją Launchera.
Wszystko kompiluje w chroot (amd64, deb jessie).

Pobrałem wersje 0.95 i tutaj zaczynają się schody:

 97%] Building CXX object client/CMakeFiles/vcmiclient.dir/CVideoHandler.cpp.o
/home/test/trunk/client/CVideoHandler.cpp: In member function 'bool CVideoPlayer::open(std::string, bool, bool)':
/home/test/trunk/client/CVideoHandler.cpp:645:95: error: invalid conversion from 'si64 (*)(void*, si64, int) {aka long long int (*)(void*, long long int, int)}' to 'int64_t (*)(void*, int64_t, int) {aka long int (*)(void*, long int, int)}' -fpermissive]
  context = avio_alloc_context( buffer, BUFFER_SIZE, 0, (void *)this, lodRead, nullptr, lodSeek);
                                                                                               ^
In file included from /usr/include/libavformat/avformat.h:207:0,
                 from /home/test/trunk/client/CVideoHandler.h:229,
                 from /home/test/trunk/client/CVideoHandler.cpp:3:
/usr/include/libavformat/avio.h:153:14: error:   initializing argument 7 of 'AVIOContext* avio_alloc_context(unsigned char*, int, int, void*, int (*)(void*, uint8_t*, int), int (*)(void*, uint8_t*, int), int64_t (*)(void*, int64_t, int))' -fpermissive]
 AVIOContext *avio_alloc_context(
              ^
/home/test/trunk/launcher/jsonutils.cpp: In function 'JsonNode JsonUtils::toJson(QVariant)':
/home/test/trunk/launcher/jsonutils.cpp:87:39: warning: comparison between 'enum QVariant::Type' and 'enum QMetaType::Type' -Wenum-compare]
  else if (object.type() == QMetaType::QString)
                                       ^
/home/test/trunk/launcher/jsonutils.cpp:89:39: warning: comparison between 'enum QVariant::Type' and 'enum QMetaType::Type' -Wenum-compare]
  else if (object.type() == QMetaType::Bool)
                                       ^
make[2]: *** [client/CMakeFiles/vcmiclient.dir/CVideoHandler.cpp.o] Error 1
make[1]: *** [client/CMakeFiles/vcmiclient.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
Linking CXX executable vcmilauncher
 97%] Built target vcmilauncher
make: *** [all] Error 2

Co może być problemem?

#2

Ok, znalazłem rozwiązanie.

Problemem była wersja libav w jessie.
Stworzyłem chroot na bazie sid’a i wszystko działa

#3

Dzięki za podanie rozwiązania, wątek będzie służył potomnym. :slight_smile: