Backend/C

glib의 간단한 사용법

petitCoding 2012. 4. 12. 10:13

리눅스 개발자 및 엔지니어라면 누구나 GNOME 에 대해서 들어봤을 것이다.

GNOME은 리눅스 사용자들에게 UI 및 데스크탑 어플리케이션을 제공하는 프로젝트라 할 수 있다. 따라서 윈도우만 쓰던 유저도 이 GNOME을 이용해 리눅스를 윈도우처럼 편하게 쓸 수 있다고 한다. (난 검은창만 써서..ㅋㅋㅋㅋ)

단지 UI뿐만 아니라, 워크나 스프레드 시트, 브라우저 등등의 유용한 어플리케이션도 제공한다.

 

오늘 포스팅할 내용은 이 GNOME 에서 만든 Glibc에 대한 것이다.

Glib에는 개발자가 직접 만들지 않아도 쉽게 가져다 쓸 수 있는 유용한 라이브러리가 많이 있다.

나도 팀장님이 추천해 주셔서 이 사이트를 알게 되었는데, 사용해보니 쉽고 간단하다.

 

Glib 페이지 바로가기

 

지금 나와있는 최신 버전인 2.28.7 버전 링크를 클릭하면 다양한 유틸들이 나오는 것을 볼 수 있다.

 

이 유틸들 중에 String 관련 부분을 잠시 테스트해보았다.

 

 

#include <glib.h>
#include <glib/gprintf.h>

int main(void)
{
    gchar *str, *str_cpy;

    str = g_malloc(128);
    str_cpy = g_malloc(128);

    g_sprintf(str, "Test Glib String");
    g_strlcpy(str_cpy, str, 10);

    g_printf("%s\n", str);
    g_printf("%s\n", str_cpy);

    g_free(str);
    g_free(str_cpy);
    return 0;
}

 

include 부분을 보면 기존에 사용했던 <stdio.h> 등은 온데 간데 없고 <glib.h> 등의 파일이 선언되어 있는 것을 볼 수 있다. 바로 이것이 glib를 사용한 코딩이 되겠다.

 

g_malloc, g_free, g_sprintf, g_printf 등이 보이는데, 이러한 방식으로 다양한 glib함수들을 사용할 수 있다.

 

Makefile에는 다음과 같이 추가한다.

 

INCLUDES    = -I. -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include/ (헤더 파일 경로)
LIB         = -lglib-2.0 (라이브러리)

 

 

기본적인 함수 외에도 링크드 리스트, 해시, 인코딩 등등등의 유용한 함수가 있으니 힘들게 개발 하지 말고 갖다 써보시길...ㅎㅎㅎㅎ

'Backend > C' 카테고리의 다른 글

Hello, World!  (0) 2012.04.12
About C Language  (0) 2012.04.12
Memmove  (0) 2012.04.12
valgrind  (0) 2011.05.26
gprof  (0) 2011.05.26