2013-07-15 62 views
4

我想用wxWidgets中的多操作系統GUI在Go中開發程序,我的開發環境是WinXP x86。wxWidgets和Golang

我想使用wxWidgets Go封裝器wxGo,但文檔非常緩慢,而且該項目自2年以來似乎已經停止。

我遇到了一些錯誤與go get github.com/JeroenD/wxGogo get github.com/JeroenD/wxGogo install github.com/JeroenD/wxGo

結果:

結果的 go install github.com/JeroenD/wxGo
package github.com/JeroenD/wxGo 
    imports github.com/JeroenD/wxGo 
    imports github.com/JeroenD/wxGo: no Go source files in C:\Documents and Settings\dell\Mes documents\gopath\src\github.com\JeroenD\wxGo 

can't load package: package github.com/JeroenD/wxGo: no Go source files in C:\Documents and Settings\dell\Mes documents\gopath\src\github.com\JeroenD\wxGo 

我試圖按照從JeroenD年代Building.txt文檔github上。第一次,我下載並安裝了wxWidgets,示例代碼能夠編譯(使用MinGW),但我無法從源代碼編譯wxWidgets庫。第二次,我下載並安裝了wxPack,libs/dll已經編譯完成。在這裏,問題是我無法編譯wxWidgets示例。

如JeroenD的github的Buiding.txt文檔中所述,我安裝了SWIGWIN,但沒有從源碼編譯,因爲SWIG現在支持Go(來自SWIG的文檔)。但現在,我不知道如何處理包裝(wxGo),wxWidgets dll/libs和SWIG。我認爲我讀了SWIG需要* .i文件來從語言到另一個語言進行綁定,但是我在wxWidgets文件夾中找不到任何文件,或許我必須從另一個wxWidgets綁定中獲取這些文件(wxLua和wxPython在它們的回購)。

我的目標是讓wxWidgets lib與Go一起工作,以便能夠在wxWidgets中編寫多操作系統GUI,我有點驚訝沒有人發佈過JeroenD的包問題,也不想讓wxWidgets與Go一起工作。

您可能會問,使用go-gtk構建gtk GUI並不是一個解決方案,因爲在我的項目中需要一個多操作系統GUI來尋找操作系統本機(如果您有一個多操作系統GUI庫,看起來很原生,使用起來更簡單,請告訴我)。

回答

2

按照Building.txt文件:

To build the wxGo library: 
cd wx 
make install 

所以,儘管這是一個圍棋包,它似乎並沒有使用任何實際的Go代碼(如果你在github.com/JeroenD/wxGo你看將不會看到任何.go文件)。

我認爲,在這樣的情況下,你需要使用git(而不是go get)和make install代替go install

在windows上,您可能想要安裝Git for Windows安裝程序以使此過程更簡單一些。

一旦它的建成,它看起來像您可以使用

import "wx" 

像往常一樣在你的旅途中的代碼(在https://github.com/JeroenD/wxGo/blob/master/example/minimal/minimal.go小例子)

+0

我在Windows(使用MinGW),讓我做的命令是'%GOPATH%的\ src \ github.comJeroenD \ wxGo \ WX> mingw32- make install',結果如下: 'Makefile:12:C:\ Go \ /src/Make.inc:沒有這樣的文件或目錄 Makefile:28:C:\ Go \ /src/Make.pkg:No這樣的文件或目錄 mingw32-make:***沒有規則使目標'C:\ Go \ /src/Make.pkg'。 Stop.' 然後,我將JeroenD的github中的Make.pkg文件放在%GOROOT%\ src \文件夾中,現在前面命令的結果是: 'C:\ Go \ /src/Make.pkg:9 :/src/Make.common:沒有這樣的文件或目錄 C:\ Go \ /src/Make.pkg:61:***缺少分隔符。 Stop.' – Lomanic

+0

嘗試從Git-Bash(Git for Windows附帶的Bash版本)而不是CMD.EXE或Powershell運行mingw32-make,因爲它可能希望文件分隔符是正斜槓而不是反斜槓。 – Intermernet

+0

不,Git-Bash沒有幫助(完全相同的結果)。我從[golang的github](https://github.com/niemeyer/golang/blob/master/src)下載了所需的'Make.common'和'Make.inc'文件,並將它們放入%GOROOT%\ src \文件夾。 我的錯誤是%GOROOT%\ src \ Make.pkg第212行的缺失「-intgosize 32」參數。 這裏是我的新錯誤: 我的評論太長,在這裏它是:[鏈接](http://pastebin.com/Qa9jqWTT) 我現在在尋找dlimpexp.h和version.h – Lomanic

-2

QML可能是一個更好的選擇,它可以幫助處理wxWidget或QT內衣。

+0

QML似乎是一個很好的工具,但它是爲Qt設計的,所以我認爲它超出了我的範圍,我沒有閱讀任何與QML處理wxWidgets相關的東西。你可以給我一個鏈接或解釋它如何幫助wxWidgets? – Lomanic