Golang中国

代码如下:

=========================================
1 package main
2
3 import (
4 “fmt”
5 )
6
7
8 /
9 #include <stdio.h>
10 int Add(int a, int b)
11 {
12 int c = a+ b;
13 printf(“in c: result=%d\n”, c);
14 return a + b;
15 }
16
/
17 import “C”
18
19 func main(){
20
21 fmt.Pirntln(“”)
22 R := C.Add(C.int(10), C.int(20))
23 fmt.Pirntln(“in go result=”, R)
24 }

=========================================
执行下面的命令:
go build my.go
返回报错信息:
command-line-arguments
/usr/bin/ld: unrecognized option ‘—build-id=none’
/usr/bin/ld: use the —help option for usage information
collect2: ld 返回 1

5 回复
ThoseFlowers
#1 ThoseFlowers • 2016-01-21 15:28

提示信息已经写了
unrecognized option
无法识别的选项:—build-id=none

hezytop
#2 hezytop • 2016-01-21 16:15

可是这个选项是哪里来的呢?要怎么避免这个错误?

hezytop
#3 hezytop • 2016-01-21 23:49

求前辈出手啊

ThoseFlowers
#4 ThoseFlowers • 2016-01-22 14:56

你看import "C"上方的注释,对劲吗?

hezytop
#5 hezytop • 2016-01-25 12:15

多谢各位回复,已经解决,分享下解决方法。
原因:由于我的开发环境相对老旧 RedHat 5.7/GCC 4.1.2 系统不支持 build-id 的配置内容。
解决方法:修改 [go/src/cmd/go/build.go] 文件,将其中的disableBuildID 函数中的—build-id去掉,然后重新编译golang即可。

需要 登录 后方可回复, 如果你还没有账号你可以 注册 一个帐号。