我正在尝试在 Windows 上的 Go 项目中使用 hunspell 库。我有已编译的 Windows DLL (x64)和相应的头文件(用 C 编写),但我无法将它链接到 Go 程序。到目前为止我已经尝试过:package main//#cgo CFLAGS: -Id:/Go/HunSpellTest/build///#cgo LDFLAGS: -Ld:/Go/HunSpellTest/build/llibhunspell-1.7-0.dll -llibhunspell-1.7-0// #include <stdlib.h>// #include <hunspell.h>import "C"import ( "unsafe")func main() { C.Hunspell_create()}但是对于路径和文件名的任意组合(有扩展名,没有扩展名,没有版本号,有相对和绝对路径,使用斜杠或反斜杠)我得到了同样的错误:undefined reference to __imp_Hunspell_create我试图将该路径添加到全局PATH变量或将 DLL 放入系统范围的文件夹中,但没有任何效果。请注意,我可以将 DLL 与syscall包链接并调用该Hunspell_create方法,但我想使用hunspellgo包中的 lib。
1 回答
米脂
TA贡献1836条经验 获得超3个赞
C.Hunspell_create()
缺失const char* affpath
和const char* dpath
参数。
也许您还缺少mingw-w64/msys2/cygwin
Windows 上的一些 deps 包。hunspellgo似乎没有在 Windows 上测试过。您需要一个类似 linux 的构建系统(例如mingw-w64/msys2/cygwin
)来在 Windows 上编译 hunspell。请参阅https://github.com/hunspell/hunspell#compiling-on-windows。在 Windows 上支持 cgo 的 Golang 也需要一些gcc/g++
依赖。
- 1 回答
- 0 关注
- 322 浏览
添加回答
举报
0/150
提交
取消