Я попытался скомпилировать 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
, если это может помочь.
Спасибо за вашу помощь!