簡體   English   中英

如何在Win 7上安裝gtk

[英]How to set up gtk for go on Win 7

我想在Windows 7 32bit上創建一個小的GUI。 這是我所做的:

要檢查正確的安裝,我在命令提示符下鍵入了gcc 它返回了錯誤消息realgcc:沒有輸入文件 ,因此似乎gcc已正確安裝。 然后我嘗試運行gtk-demo 它也起作用

  • 我的go安裝已經過測試,可以正常運行。 我已經用它開發了一個小型服務器。 GOROOT和GOPATH均已正確設置。
  • 要安裝go-gtk,我用go get github.com/mattn/go-gtk/gtk

安裝結束時出現了很多警告。

C:\\ Users \\ lhk>獲取github.com/mattn/go-gtk/gtk

#github.com/mattn/go-gtk/glib

realgcc.exe:警告:最后輸入文件后的“ -xc”無效

realgcc.exe:沒有輸入文件

#github.com/mattn/go-gtk/gdk

realgcc.exe:警告:最后輸入文件后的“ -xc”無效

realgcc.exe:沒有輸入文件

#github.com/mattn/go-gtk/pango

realgcc.exe:警告:最后輸入文件后的“ -xc”無效

realgcc.exe:沒有輸入文件

C:\\ Users \\ lhk>

為了測試go-gtk的安裝,我使用了以下示例代碼: http : //mattn.github.io/go-gtk/ 我嘗試通過go run運行此代碼,但是它終止並顯示錯誤消息:

#github.com/mattn/go-gtk/glib
realgcc.exe:警告:最后輸入文件后的“ -xc”無效
realgcc.exe:沒有輸入文件
#github.com/mattn/go-gtk/gdk
realgcc.exe:警告:最后輸入文件后的“ -xc”無效
realgcc.exe:沒有輸入文件
#github.com/mattn/go-gtk/pango
realgcc.exe:警告:最后輸入文件后的“ -xc”無效
realgcc.exe:沒有輸入文件
退出狀態2

我做錯什么了 ? 如何設置gtk以正確使用go?

更新資料

Go IRC頻道上的mb0很有幫助,並向我指出了這個https://groups.google.com/forum/?fromgroups#!topic/golang-nuts/GwbkQREiTZI

go-gtk的創建者顯然讓go-gtk在win32上工作。 他沒有使用go get。 相反,他將github存儲庫克隆到他的GOPATH上的src文件夾中,並使用mingw編譯器外殼調用mingw32-make。

我做了完全一樣的事情:克隆了倉庫,然后叫mingw32-make。 它開始編譯,但失敗,並顯示錯誤消息:

#pkg-config --cflags gtksourceview-2.0

在pkg-config搜索路徑中找不到軟件包gtksourceview-2.0。

也許您應該添加包含“ gtksourceview-2.0.pc”的目錄

到PKG_CONFIG_PATH環境變量

找不到包“ gtksourceview-2.0”的退出狀態

1 mingw32-make: * [全部]錯誤2

這實際上給出了一些具體建議。 顯然有一個軟件包配置實用程序,它找不到重要的軟件包。 不幸的是,我無所適從。 我檢查了gtk網站,並在pkg-config http://www.gtk.org/api/2.6/gtk/gtk-compiling.html上找到了這篇文章

在我看來,pkg-config負責配置軟件包的導入。 因此,我不願意自己創建PKG_CONFIG_PATH變量,因為我不知道它應該指向何處。 我只是嘗試在mingw shell中運行to shell命令: pkg-config --cflags gtk+-2.0pkg-config --libs gtk+-2.0 第一個似乎顯示包含路徑的列表,第二個似乎僅打印可用的庫。 有pango,cairo,gobject,pixbuf等許多工具,但絕對沒有像gtksourceview這樣的庫。

我的猜測是我的機器上沒有這個庫。 這讓我感到困惑,因為我將所有文件下載並解壓縮為一個可以滿足所有依賴關系的軟件包。

我該怎么辦才能解決這個問題?

終於可以了。 這是逐步指導,使gtk在go的32位Windows上工作。

  • 安裝Mingw和Msys
  • 從此處http://www.gtk.org/download/win32.php下載gtk多合一捆綁包
  • 將其解壓縮到C:\\ GTK。 我聽說這個名字很重要。 就我個人而言,我想不出原因,但是您可能要記住這是可能的錯誤來源。
  • 將bin文件夾添加到您的路徑。 現在,您應該可以從Shell中運行gtk-demo了。

gtk網站表示,多合一捆綁包同時包含gtk +堆棧和3rd party依賴項。 但是為了在Windows上編譯go-gtk,您將需要安裝其他庫。

您需要gtksourceview和libxml。 這些可以在這里找到: http : //ftp.gnome.org/pub/gnome/binaries/win32/gtksourceview/2.10/以及這里: http : //ftp.gnome.org/pub/GNOME/binaries/win32/dependencies /

下載將是一個包含各種文件夾的壓縮文件。 您需要解壓縮文件夾並將其復制到C:\\ GTK。 Windows會詢問您是否要將它們集成到現有的。 是的你是。 現在,您已經下載了所有依賴項。

  • 打開Mingw shell並導航到go-gtk文件夾
  • 調用“ pkg-config --cflags gtk + -2.0”
  • 調用“ pkg-config --libs gtk + -2.0”
  • 致電mingw32-make

編譯應該可以正常工作。 如果有錯誤,並且mingw抱怨缺少庫,您應該能夠像安裝gtksourceview和libxml一樣安裝它們。

現在測試go-gtk

  • 在go src目錄中創建一個新文件夾。 我將其命名為“ gtktest”
  • 創建一個新的.go文件。
  • 從此處復制示例代碼: http : //mattn.github.io/go-gtk/
  • 使用go build創建一個exe

我希望這可以幫助您在Windows上使用go和gtk。

我一直試圖在GO / Windows上運行GUI框架,但最終我按照您的指示進行了操作。

我只有幾個補充:

  • 我在路徑中添加了“ C:\\ GTK \\ bin”,而不是“ C:\\ GTK”
  • 我必須添加第三個依賴項:pthreads
  • 要下載正確的依賴項:每次獲取文件名中包含“ dev”的文件
  • 可以在C:\\ MinGW \\ msys \\ 1.0 \\ msys.bat中找到mingw控制台

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM