SWIG + Go:不使用cgo时不允许使用C源文件

Eva*_*cks 4 swig build go

我试图用Go 包装这个库(https://github.com/lemire/EWAHBoolArray),但是我升级到1.4后遇到了很多问题

我使用Go 1.3.3并按照SWIG网站上SWIG + Go的说明成功地完成了所有工作.我不得不手动编译和安装包而不是使用go build,但一切都运行正常.

现在,当我尝试使用Go 1.4.2运行相同的程序时,我收到此错误:

ewah_usage.go:5:2: C source files not allowed when not using cgo: goewah_gc.c
Run Code Online (Sandbox Code Playgroud)

我使用最新的SWIG和最新的Go重建了包,它似乎已正确安装.但每当我使用该库运行程序时,我都会收到上述错误.

我的测试程序(goewah是我用SWIG构建的库)

package main

import (
    "fmt"
    "bitbucket.org/evanh/goewah"
)

func main() {
    x := goewah.NewEWAHBoolArray()
    x.Set(1)
    x.Set(2)
    fmt.Println(x.Get(1))
}
Run Code Online (Sandbox Code Playgroud)

ian*_*ant 9

这是一个错误.抱歉.添加一个刚才说的文件

package p
import "C"
Run Code Online (Sandbox Code Playgroud)

你应该绕过它.

  • 不是新包,而是同一包中的新 .g​​o 文件。 (2认同)