2013-02-16 2 views
0

EGL을 사용하는 간단한 프로그램을 작성하려고하지만 bcm_host.h를 포함 시키면 gcc가 존재하지 않는다고 말합니다. 그래서/opt/vc/include를 makefile에 추가합니다. 그것은 다른 헤더가 없다고 말하고, 다른 디렉토리를 추가하고, 이제 6 개의 폴더 이후에, 나는 더 이상 그것을하고 싶지 않지만 gcc는 더 많은 것을 원합니다. 나는 /opt/vc/src/hello_pi/Makefile.include 파일을 보았고 단지 3 개의 폴더 만 추가합니다. 그래서 질문은 : 내가 뭘 잘못하고 있니?Raspberry Pi bcm_host는 디렉토리를 포함합니다.

다음은 메이크 :

LIB_DIR = -L/opt/vc/lib 
INCLUDE_DIRS = -I/opt/vc/include -I/opt/vc/include/interface/vcos/ -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/interface/vmc_host/linux -I/opt/vc/include/interface/vmcs_host -I/opt/vc/include/interface/vchi -I/usr/include/SDL -I- 

LIBS = -lSDL 

bin: 
    gcc $(LIB_DIRS) $(INCLUDE_DIRS) $(LIBS) main.c 
+0

메이크 파일을 알려주십시오. 귀하의 설명에서 문제가 무엇인지 알기가 어렵습니다. – finnw

답변

0

나는 내가 dispmax 예에서 코드를 사용하여 한 프로젝트에 bcm_host.h 포함되어 있습니다. 나는 도서관으로 -lbcm_host 추가를 제외하고, 매우 유사한 메이크 설정이 : 나는 특히 EGL을 사용하려고하지 않았지만, 나를 위해 일한

# Include the Broadcom hardware interface library 
XINCDIR += /opt/vc/include 
XINCDIR += /opt/vc/include/interface/vcos/pthreads 
XLIBS += -L/opt/vc/lib/ -lbcm_host 

. 대신에 -lEGL이 필요할 수도 있고 추가로 필요할 수도 있습니다.