我认为这是当前Golang实现中的一个错误,但我不完全确定。
说我有两个Go源文件:
test1.go:
package tmp
func test1() {
test2()
}
other.go:
package tmp
func test2() {}
他们建造没有错误; test2()位于包tmp中的test1()
但是,如果我将other.go重命名为arm.go,编译器会给出:
undefined: test2
......这很奇怪;任何其他名称似乎都可以正常工作,除了arm.go.想法?
答案 0 :(得分:3)
arm.go文件名是特殊的(参见http://golang.org/pkg/go/build/#hdr-Build_Constraints)。该文件只能在GOARCH = arm上构建。我怀疑你有不同的CPU,所以文件被排除在外。
亚历