2014년 9월 17일 수요일

[미완] Code::Blocks에 GTK+ 설정

[미완] 코드블럭에 GTK+ 설정

코드블럭도 처음이고 GTK+도 처음이라
"Hello World!"에러를 노가다로 잡아서 설정법을 알아냈다.

환경
Windows 7 SP1 64bit(밑에 주소는 64bit용임)
Code::Blocks 13.12 다운 및 설치
(http://www.codeblocks.org/downloads/26)
GTK+ 3.6.4 다운 및 압축해제(나는 C드라이브에 해제)
(http://www.gtk.org/download/win64.php)

준비끝 이제 설정
1. Code::Blocks 실행 > File > New > Project... > Console application로 프로젝트 생성

2. main.cpp에서 GTK+기본("Hello World!") 입력
#include <gtk/gtk.h>

int main (int argc, char *argv[])
{
    GtkWidget *window;
    GtkWidget *label;

    gtk_init(&argc, &argv);

    /* Create the main, top level window */
    window = gtk_window_new(GTK_WINDOW_TOPLEVEL);

    /* Give it the title */
    gtk_window_set_title(GTK_WINDOW(window), "Hello, world!");

    /* Center the window */
    gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER);

    /* Set the window's default size */
    gtk_window_set_default_size(GTK_WINDOW(window), 200, 100);

    /*
    ** Map the destroy signal of the window to gtk_main_quit;
    ** When the window is about to be destroyed, we get a notification and
    ** stop the main GTK+ loop by returning 0
    */
    g_signal_connect(window, "destroy", G_CALLBACK(gtk_main_quit), NULL);

    /*
    ** Assign the variable "label" to a new GTK label,
    ** with the text "Hello, world!"
    */
    label = gtk_label_new("Hello, world!");

    /* Plot the label onto the main window */
    gtk_container_add(GTK_CONTAINER(window), label);

    /* Make sure that everything, window and label, are visible */
    gtk_widget_show_all(window);

    /*
    ** Start the main loop, and do nothing (block) until
    ** the application is closed
    */
    gtk_main();

    return 0;
}
컴파일 하면 에러발생

3. include 
위 메뉴에서 Settings > Compiler > Search directories탭 > Complier 탭에 include 폴더 추가
C:\gtk+-bundle_3.6.4-20130921_win32\include\gtk-3.0
C:\gtk+-bundle_3.6.4-20130921_win32\include\glib-2.0
C:\gtk+-bundle_3.6.4-20130921_win32\lib\glib-2.0\include -> lib에 있음
C:\gtk+-bundle_3.6.4-20130921_win32\include\cairo
C:\gtk+-bundle_3.6.4-20130921_win32\include\gdk-pixbuf-2.0
C:\gtk+-bundle_3.6.4-20130921_win32\include\atk-1.0
C:\gtk+-bundle_3.6.4-20130921_win32\include\pango-1.0

4. lib
위 메뉴에서 Settings > Compiler > Search directories탭 > Linker에 lib 폴더 추가
C:\gtk+-bundle_3.6.4-20130921_win32\lib

5. link livraries 추가
위 메뉴에서 Settings > Compiler > Linker settings 탭에서 
lib 폴더(C:\gtk+-bundle_3.6.4-20130921_win32\lib)에 있는 .a파일(33개) Add
6. dll 복사
bin폴더(C:\gtk+-bundle_3.6.4-20130921_win32\bin)에 있는 dll 33개를
Code::Blocks 프로젝트 파일이 있는 폴더에 복사
7 실행

GTK+ 공부할려고 하는데 자료가 많이 없다; 이 기본창 출력 설정하는데도 하루를 보넨것 같다;; 그냥 QT 공부할까...

프로젝트 파일 -> 그렇게 의미는 없다 설정이 중요하기 때문에
https://drive.google.com/file/d/0B1lR2TK2hWZeUUNyUVpMODlGM2s/edit?usp=sharing

댓글 없음:

댓글 쓰기