2016-11-29, 15:46
I'm working on CMAKE build of latest Krypton-master in a raspbian chroot for RPI2.
For RPI2 with autofoo, I see
Looking in "project/cmake/..." source, I'm not seeing any reference to rpi2
What's the correct RPi2-ready cmake build config for Krypton, equivalent to I suppose
?
I've attempted a variety of build configs
but currently am stuck at "invalid use of incomplete type ‘class CMMALBuffer’" errors in the build,
Not clear yet if that's a result of the 'wrong' platform (RPi1 vs RPi2), or can be worked-around with the right mix of configs.
I've searched forums for "CMMALBuffer" with not much luck yet.
Is there any guide yet for a successful CMAKE on RPI2 build config?
For RPI2 with autofoo, I see
Code:
./configure --with-platform=raspberry-pi2 ...
Looking in "project/cmake/..." source, I'm not seeing any reference to rpi2
What's the correct RPi2-ready cmake build config for Krypton, equivalent to I suppose
Code:
cmake ../project/cmake/ -DPLATFORM=raspberry-pi2 ...
I've attempted a variety of build configs
Code:
cmake ../project/cmake/ -DPLATFORM=raspberry-pi ... (varied options) ...
cmake --build . -- VERBOSE=1 -j4
but currently am stuck at "invalid use of incomplete type ‘class CMMALBuffer’" errors in the build,
Code:
...
[ 92%] Building C object build/cores/VideoPlayer/codecs/overlay/CMakeFiles/dvdoverlaycodecs.dir/contrib/cc_decoder.c.o
cd /usr/local/src/kodi/build/build/cores/VideoPlayer/codecs/overlay && /usr/bin/gcc-6 -I/usr/local/src/kodi -I/usr/local/src/kodi/addons/library.xbmc.addon -I/usr/local/src/kodi/lib -I/usr/local/src/kodi/lib/gtest/include -I/usr/local/src/kodi/xbmc -I/usr/local/src/kodi/xbmc/linux -I/usr/local/src/kodi/xbmc/cores/VideoPlayer -I/usr/local/src/kodi/build/build -I/usr/include/freetype2 -I/usr/local/src/kodi/build/build/cpluff/include -I/usr/local/src/kodi/build/build/libdvd/include -I/usr/include/python2.7 -I/usr/include/lzo -I/usr/local/src/kodi/build/build/include -I/usr/include/libxml2 -I/usr/include/dbus-1.0 -I/usr/lib/arm-linux-gnueabihf/dbus-1.0/include -I/usr/local/include -I/opt/vc/include -O3 -pipe -fmessage-length=0 -fstack-protector -march=armv7-a -mfpu=neon-vfpv4 -mfloat-abi=hard -mtune=cortex-a7 -mcpu=cortex-a7 -ftree-vectorize -Wno-psabi -Wa,-mno-warn-deprecated -Wno-deprecated-declarations -Wl,--dynamic-linker=/lib/ld-linux-armhf.so.3 -O3 -DNDEBUG -D_LINUX -DTARGET_POSIX -DTARGET_LINUX -D__STDC_CONSTANT_MACROS -D_FILE_DEFINED -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -DHAVE_STD__U16_STRING=1 -DHAVE_STD__U32_STRING=1 -DHAVE_CHAR16_T=1 -DHAVE_CHAR32_T=1 -DHAVE_STDINT_H=1 -DHAS_BUILTIN_SYNC_ADD_AND_FETCH=1 -DHAS_BUILTIN_SYNC_SUB_AND_FETCH=1 -DHAS_BUILTIN_SYNC_VAL_COMPARE_AND_SWAP=1 -DHAVE_INOTIFY=1 -DHAVE_POSIX_FADVISE=1 -DHAVE_LOCALTIME_R=1 -DHAVE_INTTYPES_H=1 -DFFMPEG_VER_SHA=\"3.1.5-Krypton-Beta5-1\" -DUSE_STATIC_FFMPEG=1 -DHAVE_LIBMICROHTTPD=1 -DHAVE_MYSQL=1 -DHAVE_LIBSSH=1 -DHAVE_LIBXSLT=1 -DHAVE_ALSA=1 -DUSE_ALSA=1 -DHAVE_LIBUDEV=1 -DHAVE_DBUS=1 -DHAVE_LIBCEC=1 -DHAVE_LIBBLURAY=1 -DHAVE_LIBNFS=1 -DHAVE_OPENSSL=1 -DUSE_UPNP=1 -DHAVE_XBMC_NONFREE=1 -DHAVE_LIBGLESV2 -DHAVE_LIBEGL=1 -DBIN_INSTALL_PATH=\"/usr/local/kodi/lib/kodi\" -DINSTALL_PATH=\"/usr/local/kodi/share/kodi\" -o CMakeFiles/dvdoverlaycodecs.dir/contrib/cc_decoder.c.o -c /usr/local/src/kodi/xbmc/cores/VideoPlayer/DVDCodecs/Overlay/contrib/cc_decoder.c
/usr/local/src/kodi/xbmc/cores/VideoPlayer/DVDCodecs/Overlay/contrib/cc_decoder.c:1:0: warning: switch -mcpu=cortex-a7 conflicts with -march=armv7-a switch
/*
In file included from /usr/local/src/kodi/xbmc/cores/VideoPlayer/VideoRenderers/HwDecRender/MMALRenderer.h:32:0,
from /usr/local/src/kodi/xbmc/cores/VideoPlayer/DVDCodecs/Video/MMALCodec.cpp:45:
/usr/local/src/kodi/xbmc/cores/VideoPlayer/DVDCodecs/Video/MMALFFmpeg.h:40:31: error: invalid use of incomplete type ‘class CMMALBuffer’
class CMMALYUVBuffer : public CMMALBuffer
^~~~~~~~~~~
In file included from /usr/local/src/kodi/xbmc/cores/VideoPlayer/DVDCodecs/Video/MMALCodec.cpp:33:0:
/usr/local/src/kodi/xbmc/cores/VideoPlayer/DVDCodecs/Video/DVDVideoCodec.h:52:7: note: forward declaration of ‘class CMMALBuffer’
class CMMALBuffer;
^~~~~~~~~~~
In file included from /usr/local/src/kodi/xbmc/cores/VideoPlayer/DVDCodecs/Video/MMALCodec.cpp:45:0:
/usr/local/src/kodi/xbmc/cores/VideoPlayer/VideoRenderers/HwDecRender/MMALRenderer.h:56:116: error: ‘MMALState’ has not been declared
CMMALPool(const char *component_name, bool input, uint32_t num_buffers, uint32_t buffer_size, uint32_t encoding, MMALState state);
^~~~~~~~~
Not clear yet if that's a result of the 'wrong' platform (RPi1 vs RPi2), or can be worked-around with the right mix of configs.
I've searched forums for "CMMALBuffer" with not much luck yet.
Is there any guide yet for a successful CMAKE on RPI2 build config?