[Gtk] Gtk for Windows

  • Gtk for Windows
  • Gtk本身是個跨平台的視窗設計API,你可以到官方下載windows版的Gtk:

    http://ftp.gnome.org/pub/gnome/binaries/win32/gtk+/2.12/

    下載完後解壓縮到你想放的目錄底下,筆者我放在C:\底下,接著要設定環境變數,將Gtk的bin目錄資料夾位置設定到PATH裡,(例如我的路徑在C:\gtk+-bundle-2.12.11\bin),如此你就設定完Gtk了,如果你還沒裝上MinGW,你可以參考這一篇的設定[GCC] GCC for Windows (MinGW/DEV-C++)

    使用沒有與glade結合的原始碼做為範例(因為目前為止筆者我還不知道如何讓windows也能使用glade)

    Download: GGenPass.c

    如果你先編譯了話,你會發現不能編譯,因為windows會跟你說找不到$#^%$&%,這時只好自行手動設定makefile裡的library和include位址,我的makefile內容如下:

    ########### makefile start ###############

    CC = gcc
    LIBS = -LC:/gtk+-bundle-2.12.11/lib -lgtk-win32-2.0 -lgdk-win32-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lpangowin32-1.0 -lgdi32 -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lintl
    INC = -mms-bitfields -IC:/gtk+-bundle-2.12.11/include/gtk-2.0 -IC:/gtk+-bundle-2.12.11/lib/gtk-2.0/include -IC:/gtk+-bundle-2.12.11/include/atk-1.0 -IC:/gtk+-bundle-2.12.11/include/cairo -IC:/gtk+-bundle-2.12.11/include/pango-1.0 -IC:/gtk+-bundle-2.12.11/include/glib-2.0 -IC:/gtk+-bundle-2.12.11/lib/glib-2.0/include -IC:/gtk+-bundle-2.12.11/include/libpng12
    CFLAG = -c -Wall -g
    BIN = GGenPass.exe
    OBJS = GGenPass.o

    all: $(OBJS)
    $(CC) $(OBJS) -o $(BIN) $(LIBS)


    GGenPass.o: GGenPass.c
    $(CC) $(CFLAG) GGenPass.c $(INC)

    clean:
    del /Q/F *.o *.exe

    ############# makefile end ##############

    當然那些路徑並不是我一個字一個字打上去,是用I/O重新導向輸出完成的,如下:

    • pkg-config --cflags --libs gtk+-2.0 >inclib.txt

    上面的指令就會把Gtk相關的library和include路徑輸出到inclib.txt檔案裡

    至於上面程式的編譯結果跟上一篇是一樣的,只是界面醜了點,所以Windows底下沒有特別需求,還是使用C#吧!

Orange - data analysis tool

Installation pip install orange3 Run orange python -m Orange.canvas