2011-10-21 3 views
7

Eclipse CDT를 사용하여 C 소프트웨어를 개발 중입니다. glib를 사용하고 싶지만 항상 "Unresolved inclusion :"이라고보고합니다. 내 우분투에 입심을 설치 한 :Makefile에서 glib를 설정하는 방법은 무엇입니까?

% gcc test.c -Wall -o test `pkg-config --cflags --libs glib-2.0` 

하지만 그것은 내 메이크 파일을 통해 작동하게하는 방법을 모른다 : 나는 몇 가지 제안을 발견하지만

[email protected]:~$ dpkg -l | grep libglib 
ii libglib-perl       2:1.223-1   
ii libglib2.0-0       2.28.6-0ubuntu1  
ii libglib2.0-bin      2.28.6-0ubuntu1  
ii libglib2.0-cil      2.12.10-1ubuntu1  
ii libglib2.0-data      2.28.6-0ubuntu1   
ii libglib2.0-dev      2.28.6-0ubuntu1  
ii libglib2.0-doc      2.28.6-0ubuntu1  
ii libglibmm-2.4-1c2a     2.28.0-1     

내가 C.에 신입생 오전

CC=   gcc 
CXX=  g++ 
CFLAGS=  -ggdb -g -Wall -O2 
CXXFLAGS= $(CFLAGS) 
DFLAGS=  -DHAVE_PTHREAD #-D_FILE_OFFSET_BITS=64 
OBJS=  rand.o 
PROG=  peta 
INCLUDES= 
LIBS=  -lm -lz -lpthread -Lbwt_gen -lbwtgen 
SUBDIRS= . bwt_gen 

.SUFFIXES:.c .o .cc 

.c.o: 
     $(CC) -c $(CFLAGS) $(DFLAGS) $(INCLUDES) $< -o [email protected] 
.cc.o: 
     $(CXX) -c $(CXXFLAGS) $(DFLAGS) $(INCLUDES) $< -o [email protected] 

all:$(PROG) 

lib-recur all-recur clean-recur cleanlocal-recur install-recur: 
     @target=`echo [email protected] | sed s/-recur//`; \ 
     wdir=`pwd`; \ 
     list='$(SUBDIRS)'; for subdir in $$list; do \ 
      cd $$subdir; \ 
      $(MAKE) CC="$(CC)" CXX="$(CXX)" DFLAGS="$(DFLAGS)" CFLAGS="$(CFLAGS)" \ 
       INCLUDES="$(INCLUDES)" $$target || exit 1; \ 
      cd $$wdir; \ 
     done; 

lib: 

peta:lib-recur $(OBJS) main.o 
     $(CC) $(CFLAGS) $(DFLAGS) $(OBJS) main.o -o [email protected] $(LIBS) 

cleanlocal: 
     rm -f gmon.out *.o a.out $(PROG) *~ *.a 

clean:cleanlocal-recur 

아무도 도와 줄 수 있습니까? 감사. 당신의 LIBS 지시어의 끝에

+0

컴파일러 오류가 발생하면 도움이 될 것입니다. – aditya

답변

23

추가]이 : 당신의 CXXFLAGS와 CFLAGS에

$(shell pkg-config --libs glib-2.0) 

그리고이 :

$(shell pkg-config --cflags glib-2.0) 

이이 일을 할 것입니다.

+0

작동합니다. 고마워. – Joy

관련 문제