2011-03-05 5 views
0

저는 비교적 새로운 프로그래머입니다. 그래서 이것이 다소 어리석은 질문이라면 용서하십시오.GStreamer : 헤더 관련 컴파일 오류 gst-interfaces package

방금 ​​중간 규모의 프로그램을 작성했으며 컴파일하는 데 문제가 있습니다.

그리고 난 다음 명령 줄을 사용하기 위해 노력하고있어 (내가 사용 GObjects의 몇 개의)

#include <glib.h> 
#include <glib-object.h> 
#include <X11/Xlib.h> 
#include <gdk/gdk.h> 
#include <gdk/gdkx.h> 
#include <gtk/gtk.h> 
#include <gst/gst.h> 
#include <gst/interfaces/xoverlay.h> 

플러스 다른 사용자 정의 헤더 파일 : 내는 다음과 같이 포함

gcc -Wall (my source files) -o (my output) `pkg-config --cflags --libs gdk gtk+-2.0 glib-2.0 gobject-2.0 gstreamer-0.10 x11` 

은 내가 사용하고 라이브러리에 그들 모두 관련, (물론 1000) 오류를 컴파일 많은를 얻을. 대부분의 모양 : 등등 등등

/usr/include/glib-2.0/gobject/gtype.h:367: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'typedef' 

/usr/include/glib-2.0/gobject/gobject.h:199: error: expected ')' before '*' token 

/usr/include/glib-2.0/gobject/gsignal.h:262: error: expected declaration specifiers or '...' before 'GSignalFlags' 

그리고합니다.

도움이 될 것입니다. 링크 나 포함에있어 어리석은 실수라고 생각합니다. 그러나 나는 그것을 알아낼 수 없습니다.

답변

3

룩을 시도하고 다른 사람을 무시하고, 자신의 코드를 확인합니다.

첫 번째 오류는 #include 중 하나가 발견되지 않는다고합니다. 그렇다면, 바로 그 문제를 해결할 것입니다. 오류의 전체가 그 문제로부터 떨어질 가능성이 있습니다.

아마도 gstreamer-interfaces-0.10과 같이 pkg-config 명령 줄에 필요한 모듈 중 하나가 누락되었을 수 있습니다.

+0

예, 그게 gstreamer 인터페이스가 누락되었습니다. 감사합니다. – escozzia

0

코드가 없으면 말하기 어렵습니다. 하지만 누락 된 세미콜론이나 매크로에 오류가있을 수 있습니다. 그것은 항상 당신 자신의 것이 아닌 코드에서도 그러한 종류의 이상한 메시지를 생성합니다.

더블 어쩌면 (GCC 참조) * 같은 -W으로 가족과 더 많은 디버그 플래그를 추가 할 첫 번째 오류에서

1

도움이 될지 확실하지 않지만 동일한 오류가 있습니다. (저는 Mac 용 XCode 3.2.5로 개발 중입니다).

나는 도서관/옵션/지방/lib 디렉토리 내 MacPorts를에 링크 응용 프로그램을 빌드 원했고,// ​​옵션/지역 내가 다음 않았다

을 포함한다.

대상에서
  1. , 대상 응용 프로그램을 '검색 경로'에서

  2. , 을 두 번 클릭합니다. 항상 사용자 경로 검색 [off] b. 헤더 검색 경로 [헤더 위치에 경로 추가] 예./usr/local/include/x c. 라이브러리 검색 경로 라이브러리가 사용 PKG-설정에 어디 있는지 확실하지 않은 경우 오류

수정해야

  • 컴파일 및 실행, [공유 라이브러리의 경로 (들)을 추가] 그들을 찾아라.

    PKG-설정 사용 :

    PKG-설정이 --cflags는

    예 : PKG-설정은 입심이-2.0

    -I/옵션/지역 /가 포함 --cflags /glib-2.0 -I/옵션/지역/입심-2.0/lib 디렉토리/포함 -I/옵션/지역/포함

    그런 다음이 디렉토리를보고 누락 된 종속성이 포함되어 있는지 확인한 다음 검색 경로 아래의 '헤더'또는 '라이브러리'경로에 경로를 추가하십시오.

    희망이 도움이됩니다.