gstreamer_ndk_bundle 빌드

gstreamer_ndk_bundle 빌드

Ubuntu 12.4에서 gstreamer_ndk_bundle을 빌드하려고 하는데 비참하게 실패하고 있습니다! 모든 "glib-dev" 패키지(이름에 glib및 가 있는 패키지)를 설치했으며 dev소스에서 glib 2.33.1(최신)을 컴파일/설치하려고 시도했지만 항상 다음 오류가 발생합니다.

/home/marko/gstreamer_ndk_bundle/jni/../glib/gobject/gmarshal.c:149: undefined reference to `g_value_get_schar'
collect2: ld returned 1 exit status
make: *** [/home/marko/gstreamer_ndk_bundle/obj/local/armeabi/libgobject-2.0.so] Error 1

이는 glib 소스에 에 대한 정의가 없다는 것을 의미하며 g_value_get_schar해당 함수는 버전 2.30.0 이후 어딘가에 glib에 도입되었기 때문에 적절한 glib를 사용하지 않는 것 같습니다!

/home/marko/glib-2.33.1/gstremaer_ndk_bundle 이 다음 환경 변수를 내보내 컴파일/설치한 폴더의 소스로 빌드하도록 강제하려고 했습니다 .

GLIB_GENMARSHAL=/home/marko/glib-2.33.1/gobject/glib-genmarshal 
GLIB_COMPILE_SCHEMAS=/home/marko/glib-2.33.1/gio/glib-compile-schemas

또한 설치된 glib 폴더에 gmarshal.h포함되도록 변경했습니다 .gmarshal.h

#ifndef _marko_glib_loaded
#define _marko_glib_loaded
#include "/home/marko/glib-2.33.1/gobject/gmarshal.h"
#endif

하지만 두 경우 모두 실패했습니다.

  • gstreamer를 컴파일하고 적절한 것을 설치하는 동안 어떤 glib가 사용되는지 어떻게 알 수 있습니까?
  • gstreamer_ndk_bundle이 시스템 폴더나 사용하는 폴더가 아닌 압축 해제/구성/설치한 폴더의 glib 소스를 사용하도록 하려면 어떻게 해야 합니까?
  • gstreamer-devel컴파일하는 동안 이 오류가 계속 발생하면 패키지가 필요하다는 내용을 어딘가에서 읽었습니다 . 해당 패키지는 어디서 찾을 수 있나요?! 구글링하면 안되는데...
  • gstreamer_ndk_bundle을 만들고 그 이야기를 전해 준 사람이 있나요?

답변1

--enable-debug=no에 플래그를 설정했습니다 glib/Android.mk. 그리고 링크 오류가 사라졌습니다. 이 시도. PS ./setup.sh모든 패키지를 재구성하려면 시작해야 합니다 .

관련 정보