cgo

    2熱度

    1回答

    cgo是在go中的「comments」中寫入的,這意味着默認情況下它會給出註釋語法高亮。如果在cgo文件中有適當的語法突出顯示,那將會很不錯。 我喜歡這個爲Visual Studio代碼,或vim。 如何實現?

    2熱度

    1回答

    背景 我目前在寫一Go接口爲這個library的過程。 作爲第一步,我試圖在/test/test_pc.c中通過Go包裝器調用它們來運行測試。請注意,由GCC編譯的測試很成功。 重要附加信息:值得一提的是,目前我擁有所有想要在import "C"以上運行的C代碼。原因是relic_test.h不提供函數原型,因此cgo無法通過像C.foo()這樣的調用來識別函數。因此,我把所有的test_pc.c

    2熱度

    1回答

    我試圖運行痛飲對供應商的頭,所以我並不需要重新實施在一個單獨的頭文件 swig -go -cgo -intgosize 64 -module qt -o $WORK/qt/_obj/qt_wrap.cxx -outdir $WORK/qt/_obj/ \ -I$HOME/Qt5.9.1/5.9.1/gcc_64/include -I$HOME/Qt5.9.1/5.9.1/gcc_64/inclu

    4熱度

    1回答

    我目前正在圍繞C庫編寫一個Go包裝。該C庫使用不透明的結構指針來隱藏接口中的信息。但是,底層實現會在其中存儲size_t值。這會導致生成的程序出現運行時錯誤。 最小工作示例來重現問題是這樣的: main.go: package main /* #include "stddef.h" // Create an opaque type to hide the details of the un

    1熱度

    1回答

    package main //#cgo CFLAGS: -I/home/me/geany/scintilla/include //#include <ScintillaWidget.h> import "C" import ( "github.com/mattn/go-gtk/gtk" ) func main() { gtk.Init(nil) win

    0熱度

    1回答

    我有一個外部函數decalred在C: //extern void goCallback(const struct libvlc_event_t*, void*); 要go定義: //export goCallback func goCallback(event unsafe.Pointer, userData unsafe.Pointer) { log.Fatal("TODO g

    0熱度

    1回答

    我做了一個Go程序來模擬按鍵。爲此,我必須使用cgo和不同的C代碼片段,具體取決於操作系統,正在編譯Go代碼。 我寫的代碼如下所示: package keyboard /* #include <stdint.h> #ifdef __WIN32 #cgo CFLAGS:-nostdlib #include <Windows.h> void SetKey(uint16_t key, u

    -1熱度

    1回答

    我有一個.thtml文件: ... <div> <p>{{.Something}}</p> <!-- It works here! --> {{range ...}} <p>{{.Something}}</p> <!-- It DOESN't work here! --> {{end}} </div> ... 如果我使用的.Something內

    0熱度

    1回答

    我一直在尋找一段時間,但找不到解決此問題的方法。 由於SDL2等庫不是OpenBSD操作系統的一部分,因此它們存儲在/usr/local中。 Go似乎正在尋找/usr/include中的標題,而不是/usr/local/include。我在go env中看到標誌,但我無法編輯它們。 有沒有辦法解決這個問題沒有符號鏈接?或許是C編譯器常見的-I標誌的Go代碼?

    1熱度

    1回答

    參數數組我有一個C函數: int cgroup_change_cgroup_path(const char * path, pid_t pid, const char *const controllers[]) 我想用CGO調用它在去語言。 如何傳遞第三個參數,因爲它接受C數組的字符串。