我有一个基于PHP的web应用程序。在登录页面上,它向Go服务器(位于客户机上)发出AJAX调用,以获取其MAC地址。下面是Go服务器代码:
package main
import (
"net"
"net/http"
"encoding/json"
)
//define struct for mac address json
type MacAddress struct {
Id string
}
/**
* Get device mac address
*/
func GetMacAddress(w http.Re
我对Linux非常陌生,甚至整个Linux都是如此。
我在Linux环境中构建了一个应用程序,它使用了基于cgo ()的gtk。应用程序在其本机环境(linux 64位)中构建良好,但是当我试图为达尔文64位编译时,我得到了以下结果:
# net
could not determine kind of name for C.AI_MASK
# net
could not determine kind of name for C.AI_MASK
用于构建的命令行:
env GOOS=$1 GOARCH=$2 CGO_ENABLED=1 go build $3
其中$1是达尔文,$2是amd64
我目前正在开发一个服务,它可以作为windows服务构建,也可以作为OSX/linux可执行文件运行。
我在windows文件上使用构建标记,包括一个带有main方法的
// +build windows
在另一个文件中包含一个main方法
// +build !windows
当我在mac端执行go run *.go时,会得到以下错误
mainDOS.go:10:2: no buildable Go source files in /Users/michaelbrandenburg/Documents/git-repo/goCode/src/golang.org/x/sys/windows/
汇总:当我尝试交叉编译文件链中某个地方包含C文件的.go源文件时,针对的是来自Mac主机的AMD64,我得到:
/usr/local/go/src/runtime/cgo/gcc_windows_amd64.c:8:10: fatal error: 'windows.h' file not found
纯Go代码似乎没有错误地交叉编译;当涉及C文件时,是否有一种方法可以为交叉编译获得适当的头文件?
More details:我在Mac上安装了LiteIDE,用于处理一些.go项目,而LiteIDE使将其他平台作为构建目标相对简单。我在一个很小的测试项目上测试了它,完全是Go,它
我正在做一个go项目,它植入了C代码!
我可以在linux/ and 64上构建这个项目,如果我们使用"IMPORT C“,那么我们现在就不用交叉编译了。因此,我与XGO一起工作,这可能有助于我交叉编译ARM。
我检查XGO通过交叉编译版本的go项目,没有C代码,它的工作就像交叉的围棋。
我的环境:
go version go1.13.3 linux/amd64
Go env :
GO111MODULE="on"
GOARCH="amd64"
GOBIN="/opt/go/bin"
GOCACHE="/home/jj/.cache