컴퓨터 관련
GTK 란?
_BlankSpace
2017. 4. 9. 18:13
소개
- C로 쓰여졌지만 클래스의 개념과 callback 함수(함수에 대한 포인터)를 갖춘 객체지향적인 어플 개발자 환경.
- C++ 스타일로는 GTK– 또는 GTKMM가 있다.
- GTK를 클래스화하여 사용하고 싶으면 해당 G_CALLBACK 함수를 static화 하여 사용하면 된다.
https://developer.gnome.org/gtkmm-tutorial/stable/index.html.en 참고.
설치해야할 파일
GTK+는 다음 라이브러리에 의존
- Glib
- Pango
- ATK
- GDK
- GdkPixbuf
- Cairo
기본 컴파일 방법
gcc -Wall -g helloworld.c -o helloworld `pkg-config –cflags gtk+-2.0` || `pkg-config –libs
gtk+-2.0` ← 기본적인 예
'pkg-config –cflags gtk+-2.0' 컴파일러가 볼 수 있는 Include 디렉토리를 출력한다.
'pkg-config –libs gtk+-2.0' 라이브러리 리스트.
`pkg-config –cflags –libs gtk+-2.0` 둘을 더하여 사용할 수 있음.
GTK 특징
모든 위젯은 생성 후 상위 위젯에 추가되어도 참조 카운터는 1밖에 안되고, gtk_widget_destroy() 등을 이용하여 최상위 위젯을 없애면 모든 하위 위젯 객체는 자동으로 참조 카운터가 0이 되어 메모리가 해제된다.