问题描述:
go版本 1.9.2
本机环境可以正常编译运行
执行
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build
编译出来的文件本机不可执行
放到linux上也不能执行
但是在windows系统下
执行
set CGO_ENABLED=0 set GOOS=linux set GOARCH=amd64 go build
编译出来的文件在linux上是可执行的
mac下编译linux是还需要做其他工作吗?
在linux运行提示 段错误
求解啊!
求助啊!!!!! T.T
第 1 个答案:
源码目录执行,亲测可用
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build gofile.go
第 2 个答案:
我是这么编译的
在你的项目目录下
CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -ldflags '-w' -o 打包名称 ./main.go
没有问题的
第 3 个答案:
github有现成的用于多平台交叉编译的package
另外,具体编译参数怎么设置,也可以在gox的源码中找到答案
第 4 个答案:
我一般用个脚本: build.ps1
一般拷过去就好了
osx一般要这么写:
export GOOS="windows" go build -o phoneix-windows.exe export GOOS="linux" go build -o phoneix-linux export GOOS="darwin" go build -o phoneix-darwin echo "done!"
环境设置
gopath
|-- src/domain/project/subpackage
执行目录为src/domain/project/
第 5 个答案:
段错误是访问了错误的内存段,我估计是楼主程序问题,而不是交叉编译问题.
第 6 个答案:
没人了解吗?
最近用vue写的一个项目,内容蛮多的,最后发现打开首页的时候超级慢,main.js有3.9MB.......有什么好的优化方案吗?网上搜的优化方法都是在vue代码的写法上的调整,还有其他可以优化速度的地方不