golang之交叉编译设置】的更多相关文章

俺的环境,os x,目的,生成64位linux的elf文件 直接下载osx的包就可以,不需要特意去下载源码包,我的go目录是~/golang/go cd ~/golang/go/srcGOOS=linux GOARCH=amd64 ./make.bash 终端党 到工程目录直接执行 GOOS=linux GOARCH=amd64 go build liteIde党 编译cross-linux64的配置文件,大概和这样差不多 # cross-compiler linux amd64 GOROOT=…
打包,压缩 我们的常规打包方式 $ go build Mac下我们用 ls -lh查看,可以看到我们打包出来的可执行文件会比较大,一般只写几行代码就回又3M以上的文件大小了. 我们的带压缩的打包方式 $ go build -ldflags '-w -s' Mac下我们用 ls -lh查看,可以看到我们打包出来的文件明显比刚才的小了一些,但是,也有2M之多. 压缩可执行文件(终极压缩) 我们使用第三方的压缩工具https://github.com/upx/upx/releases, Mac, li…
Golang 支持交叉编译,即在一个平台上生成另一个平台的可执行程序.方法如下: Mac 下编译 Linux 和 Windows 64位可执行程序 CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build main.go CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build main.go Linux 下编译 Mac 和 Windows 64位可执行程序 CGO_ENABLED=0 GOOS=darwin GOARC…
go run footer.go 的时候呢, go会依次去GOPATH 和GOROOT设置的对应路径下面找对应的包(目录和文件) 找的时候呢, 会在GoPATH 和GOROOT对应的目录后面再加一层路径 "/src/"哦 --------------------------------------------------------------------------------------------- https://stackoverflow.com/questions/3211…
#!/usr/bin/env bash set -e uname_s=`uname -s | awk '{print tolower($0)}'` uname_m=`uname -m` timeTag="-X 'main.BuildTime=$(date '+%Y-%m-%d %H:%M:%S')'" branchFlag="-X main.GitBranch=$(git name-rev --name-only HEAD)" commitFlag="-X…
本文介绍golang 中连接MySQL时,如何设置最大连接数和最大空闲连接数. 关于最大连接数和最大空闲连接数,是定义在golang标准库中database/sql的. 文中例子连接MySQL用的SQL driver package是github.com/go-sql-driver/mysql. 设置最大连接数的接口是 func (db *DB) SetMaxOpenConns(n int) 设置连接MySQL可以打开的最大连接数. 如果n <= 0,表示打开的连接数没有限制. 默认为0,也就是…
网络通信中,为了防止长时间无响应的情况,经常会用到网络连接超时.读写超时的设置. 本文结合例子简介golang的连接超时和读写超时设置. 1.超时设置 1.1 连接超时 func DialTimeout(network, address string, timeout time.Duration) (Conn, error) 第三个参数timeout可以用来设置连接超时设置. 如果超过timeout的指定的时间,连接没有完成,会返回超时错误. 1.2 读写超时 在Conn定义中,包括读写的超时时…
步骤 1. 始 Golang 语言开发选择一款合适的编辑器,能加速你敲字的灵感,这里推荐微软的 Visual Studio Code,简称 vscode. 2. 安装 go 插件 首先需要安装 go 语言插件,在 vscode 扩展中搜索 "go",如下图,下载安装go插件 3. 设置 GOPROXY 如果想要 vscode 在 Go语言开发的时候为我们提供诸如代码提示.代码自动补全等功能,需要安装 go tools,但是安装 tools 需要设置 goproxy,否则会因为网络问题无…
1.安转go的环境,exe安装包 2.下载liteide27.2.1 3.打开liteide开始开发,在里面添加gopath,无法读取windows里面的gopath设置,不知道什么原因,以管理员运行也没有效果 发现不使用网络的库是没有问题的 但是一旦使用github.com上面的库文件就出现无法下载 4.安装git 5.cmd go env 发现gopath为空 set gopath=XXX 6.发现找不到git,设置了windows的path也没有用,不知道为什么 直接cmd set pat…
router := gin.Default() 第一个参数是api 第二个静态问价的文件夹相对目录 router.StaticFS("/data", http.Dir("./data")) 第一个参数是api 第二个参数是具体的文件名字router.StaticFile("/favicon.ico", "./resources/favicon.ico") 这里以第一个为例 这是我的项目目录结构 data为静态目录存放的文件夹…