2011-10-21 29 views
7

Tôi đang sử dụng CDT Eclipse để phát triển phần mềm C. Tôi muốn sử dụng glib, nhưng nó luôn luôn báo cáo "Bao gồm chưa được giải quyết:". Tôi đã cài đặt lém lỉnh trên ubuntu của tôi:Làm thế nào để cấu hình glib trong Makefile?

[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     

Tôi là một sinh viên năm nhất đến C. Mặc dù tôi tìm thấy một số gợi ý:

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

Nhưng tôi không biết làm thế nào để làm cho nó làm việc thông qua Makefile của tôi:

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 

Ai đó có thể giúp tôi không? Cảm ơn.

+0

lỗi trình biên dịch sẽ hữu ích – aditya

Trả lời

23

Nối này ở phần cuối của thị libs của bạn:

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

Và đây để CXXFLAGS và CFLAGS của bạn:

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

này sẽ thực hiện công việc.

+0

Nó hoạt động. Cảm ơn rất nhiều. – Joy

Các vấn đề liên quan