我正在嘗試將 GO 與 SFML 和示例程序一起使用。我需要使用“go get”安裝包 gosfml。我在 Mac OSX 上。我已經從源代碼編譯并安裝了 SFML。包含文件位于 /usr/local/include/SFML以下命令給出了找不到頭文件的錯誤。> go get github.com/manyminds/gosfml# github.com/manyminds/gosfmlgo-proj/src/github.com/manyminds/gosfml/circleShape.go:7:11: fatal error: 'SFML/Graphics/CircleShape.h' file not found #include <SFML/Graphics/CircleShape.h> ^1 error generated.如何配置 GO 來查找頭文件?謝謝(Go 新手)
2 回答

梵蒂岡之花
TA貢獻1900條經驗 獲得超5個贊
安裝程序正在尋找您似乎沒有安裝的 SFML 的頭文件。我會先看這里http://www.sfml-dev.org/download/csfml/
如果您在安裝頭文件后仍然遇到問題,您可以嘗試添加CGO_CFLAGS
具有正確包含的環境變量。就像是
CGO_CFLAGS="-I/path/to/installed_headers/for/sfml"

SMILET
TA貢獻1796條經驗 獲得超4個贊
您需要設置兩個環境變量: 這樣做,關于“libs”的錯誤也會消失。
CGO_CFLAGS == -I%CGO_SFML_INCLUDE% CGO_LDFLAGS== -L%CGO_SFML_LIB%
我使用兩個額外的變量來保存路徑。所以我也使用:
CGO_SFML_INCLUDE == G:\SDK\SFML\include CGO_SFML_LIB == G:\SDK\SFML\lib\gcc
請注意,使用時:
%PERCENTAGE_SIGN%
它查找“PERCENTAGE_SIGN”環境變量的值并將內容粘貼到那里。
我在變量前面加上“CGO_”不是因為它是必需的,而是因為在按字母數字排序環境變量時更容易找到。
“CGO_CFLAGS”和“CGO_LDFLAGS”上的“CGO_”是必要的。
鏈接器需要 lib 目錄,編譯器需要包含目錄
確保你拼寫正確,因為如果你在這里輸入錯誤,你不會得到任何不同的錯誤信息。
我犯的一個大錯誤是輸入“ CGO_FLAGS ”而不是“ CGO_CFLAGS ”。
這是我用 Golang 設置 SFML 的視頻:https : //www.youtube.com/watch? v = jqoUiIsPfNA
請注意,在我的回答中,我使用的是絕對路徑,因為我更容易找到抽象較少的答案。將“G:\SDK\SFML”替換為您的 sfml 所在的位置。
- 2 回答
- 0 關注
- 329 瀏覽
添加回答
舉報
0/150
提交
取消