Ошибка компоновщика XBMC 13.2 на Raspberry Pi: неопределенные ссылки на COMXImage и g_OMXImage

Я попытался скомпилировать XBMC 13.2 Gotham на своем Raspberry Pi, используя DistCC для ускорения компиляции. Когда дело доходит до ссылки, я получил следующую ошибку:

AR      xbmc/cores/paplayer/paplayer.a
LD      xbmc.bin
xbmc/linux/linux.a(RBP.o): In function `CRBP::Initialize()':
RBP.cpp:(.text+0x468): undefined reference to `COMXImage::Initialize()'
RBP.cpp:(.text+0x4d0): undefined reference to `g_OMXImage'
xbmc/linux/linux.a(RBP.o): In function `CRBP::Deinitialize()':
RBP.cpp:(.text+0x7cc): undefined reference to `COMXImage::Deinitialize()'
RBP.cpp:(.text+0x878): undefined reference to `g_OMXImage'
collect2: ld returned 1 exit status
distcc[24757] ERROR: compile (null) on localhost failed
distcc[24756] ERROR: compile (null) on localhost failed
Makefile:541: recipe for target 'xbmc.bin' failed
make: *** [xbmc.bin] Error 1

Класс COMXImage присутствует в исходном коде xbmc/cores/omxplayer.

Для подготовки к компиляции я использовал команды из RaspbianXBMC.

Исходный код извлечен из репозитория XBMC Github с использованием тега 13.2.

Я запустил ./boostrap и ./configure со следующими параметрами:

./configure --build=arm-linux-gnueabihf --with-platform=raspberry-pi \
--disable-gl --enable-gles --disable-x11 --disable-sdl --enable-ccache \
--enable-optimizations --enable-external-libraries --disable-goom \ 
--disable-hal --disable-pulse --disable-vaapi --disable-vdpau \ 
--disable-xrandr --disable-airplay --disable-alsa --enable-avahi \
--enable-libbluray --enable-dvdcss --disable-debug --disable-joystick \
--enable-mid --enable-nfs --disable-profiling --disable-projectm \
--enable-rsxs --enable-rtmp --enable-optical-drive --enable-libcec

Перед полной компиляцией я извлек и успешно собрал TAGLIB и libcec из их собственных репозиториев git, используя последнюю версию.

Я мог бы предоставить вывод ./configure, если это может помочь.

Спасибо за вашу помощь!


person smeyersdev    schedule 01.09.2014    source источник


Ответы (1)


откройте файл RBP.cpp и удалите строки, содержащие

g_OMXImage.Initialize()

а также

if (m_omx_image_init) g_OMXImage.Deinitialize();

а потом попробуй перекомпилировать

person Arnas MasRodjie    schedule 01.10.2014