2

Я использую свою toolchain для компиляции gst-plugins-bad для ARM. Я скомпилировал все, что нужно для его создания, включая gstreamer, libmms и т. Д. И разместил в моем sysroot как заголовки, библиотеки и файлы, связанные с pkg-config.Ошибка при сборке библиотеки для платформы ARM

Когда я устанавливаю everyrhing кажется нормально, но при попытке компиляции результатов в:

[email protected]:~/gstreamer/gst-plugins-bad-0.10.21$ make 
make all-recursive 
make[1]: Entering directory `/home/luca/gstreamer/gst-plugins-bad-0.10.21' 
Making all in gst-libs 
make[2]: Entering directory `/home/luca/gstreamer/gst-plugins-bad-0.10.21/gst-libs' 
Making all in gst 
make[3]: Entering directory `/home/luca/gstreamer/gst-plugins-bad-0.10.21/gst-libs/gst' 
Making all in interfaces 
make[4]: Entering directory `/home/luca/gstreamer/gst-plugins-bad-0.10.21/gst-libs/gst/interfaces' 
make all-am 
make[5]: Entering directory `/home/luca/gstreamer/gst-plugins-bad-0.10.21/gst-libs/gst/interfaces' 
make[5]: Nothing to be done for `all-am'. 
make[5]: Leaving directory `/home/luca/gstreamer/gst-plugins-bad-0.10.21/gst-libs/gst/interfaces' 
make[4]: Leaving directory `/home/luca/gstreamer/gst-plugins-bad-0.10.21/gst-libs/gst/interfaces' 
Making all in signalprocessor 
make[4]: Entering directory `/home/luca/gstreamer/gst-plugins-bad-0.10.21/gst-libs/gst/signalprocessor' 
make[4]: Nothing to be done for `all'. 
make[4]: Leaving directory `/home/luca/gstreamer/gst-plugins-bad-0.10.21/gst-libs/gst/signalprocessor' 
Making all in video 
make[4]: Entering directory `/home/luca/gstreamer/gst-plugins-bad-0.10.21/gst-libs/gst/video' 
    CC  libgstbasevideo_0.10_la-gstbasevideoutils.lo 
    CC  libgstbasevideo_0.10_la-gstbasevideocodec.lo 
    CC  libgstbasevideo_0.10_la-gstbasevideodecoder.lo 
    CC  libgstbasevideo_0.10_la-gstbasevideoencoder.lo 
    CC  libgstbasevideo_0.10_la-gstbasevideoparse.lo 
    CCLD libgstbasevideo-0.10.la 
libtool: link: warning: library `/home/luca/.../arm-2010q1_vsync/arm-none-linux-gnueabi/libc/usr/lib/libgstbase-0.10.la' was moved. 
libtool: link: warning: library `/home/luca/.../arm-2010q1_vsync/arm-none-linux-gnueabi/libc/usr/lib/libgstreamer-0.10.la' was moved. 
libtool: link: warning: library `/home/luca/.../arm-2010q1_vsync/arm-none-linux-gnueabi/libc/usr/lib/libgobject-2.0.la' was moved. 
libtool: link: warning: library `/home/luca/.../arm-2010q1_vsync/arm-none-linux-gnueabi/libc/usr/lib/libgmodule-2.0.la' was moved. 
libtool: link: warning: library `/home/luca/.../arm-2010q1_vsync/arm-none-linux-gnueabi/libc/usr/lib/libgthread-2.0.la' was moved. 
libtool: link: warning: library `/home/luca/.../arm-2010q1_vsync/arm-none-linux-gnueabi/libc/usr/lib/libglib-2.0.la' was moved. 
libtool: link: warning: library `/home/luca/.../arm-2010q1_vsync/arm-none-linux-gnueabi/libc/usr/lib/libgstvideo-0.10.la' was moved. 
/usr/lib/libxml2.so: could not read symbols: File in wrong format 
collect2: ld returned 1 exit status 
make[4]: *** [libgstbasevideo-0.10.la] Error 1 
make[4]: Leaving directory `/home/luca/gstreamer/gst-plugins-bad-0.10.21/gst-libs/gst/video' 
make[3]: *** [all-recursive] Error 1 
make[3]: Leaving directory `/home/luca/gstreamer/gst-plugins-bad-0.10.21/gst-libs/gst' 
make[2]: *** [all-recursive] Error 1 
make[2]: Leaving directory `/home/luca/gstreamer/gst-plugins-bad-0.10.21/gst-libs' 
make[1]: *** [all-recursive] Error 1 
make[1]: Leaving directory `/home/luca/gstreamer/gst-plugins-bad-0.10.21' 
make: *** [all] Error 2 

Кажется, он пытается связать с моей настольной libxml2. Почему это не связано с тем, что у меня есть в моей инструментальной цепочке, которая имеет все символы?

+0

Вы нашли решение? У меня такая же проблема. – Black

ответ

0

Поддерживает ли ваш скрипт configure кросс-компиляцию autoconf? В configure.in, каково значение переменной оболочки cross_compiling после вызова AC_PROG_CC?

Если он установлен в нет, то является ли makefile установленным для использования вашего кросс-компилятора?

Чтобы установить их, Вы можете переопределить их в руководстве или использовать переменные окружения, как пример ниже

экспорт CC = аркой НКУ экспорт CXX = заклятого C++ экспорта аркой Л.Д. экспорта AR = арка-ар экспорта AS = арка, как экспорт NM = арочной-нм экспорта пОЛОСЫ = арка-полоски

Если он установлен в да, а затем проверить включать путь специально для LibXML в Makefile.

Другой возможный ресурс для компиляции GST-плагинов-плохо на ARM является следующая guide

0

Вы уверены, что ваш libxml2 имеет набора инструментов? Вернее, ваш строп.

Возможно, вам потребуется экспортировать PKG_CONFIG, поэтому при запуске 'pkg-config -libs libxml-2.0' вы получите правильный путь. Кроме того, вы можете проверить полученный файл Makefile, чтобы узнать, какие используются настоящие флаги, или создать с помощью расширенной опции.

Возможно также, что материал сборки GStreamer нарушен для кросс-компиляции, что является одной из причин, по которым я использую scratchbox 2; он делает кросс-компиляцию прозрачной.