19

我得到编译:

0 个已知错误;0 个意外错误

并输入“hello world”:

package main

import "fmt"

func main() {
  fmt.Printf("Hello, 世界\n")
}

然后我尝试编译它,但它不会:

$ 8c gotest2
gotest2:1 不是函数
gotest2:1 语法错误,姓氏:main

这是在奔腾上的 Ubuntu Linux 上进行的。去安装并通过它的测试。那么我哪里做错了?有人能告诉我从这里去哪里吗?

我也试过这个程序

package main

import fmt "fmt"  // Package implementing formatted I/O.


func main() {
    fmt.Printf("Hello, world; or Καλημέρα κόσμε; or こんにちは 世界\n");
}

但这也行不通(必须停止双关语)

$ 8c gotest3.go
gotest3.go:1 不是函数
gotest3.go:1 语法错误,姓氏:main
4

4 回答 4

42

对于 Go 1.0+,正确的构建命令现在是:go build

于 2012-10-24T15:43:03.950 回答
12

您使用的是 8c,它是 c 编译器。8g 会编译 go,8l 会链接。

于 2009-11-11T11:55:11.210 回答
3

(Go1.0.x 更新)

编译包和依赖项”部分现在将 go build 列为在 go 中编译的方式。
您仍然8g在幕后调用,并且您可以传递给的参数8g现在使用-gcflags.

-gcflags 'arg list'

传递每个 5g、6g 或 8g 编译器调用的参数

于 2012-07-23T11:09:36.460 回答
0

使用 go run 运行 go 程序。这是输出。

$ 猫 testgo.go

package main

import "fmt"

func main() {
    fmt.Printf("Hello, 世界\n")
}

$go run testgo.go

Hello, 世界
于 2019-09-21T06:55:55.107 回答