【go】andlabs/ui(含CGO代码的库) 怎么编译其它平台的可执行文件

比如在windows上编译linux的

CGO_ENABLED=1 \

CC=x86_64-w64-mingw32-gcc \

CXX=x86_64-w64-mingw32-g++ \

GOOS=linux \

go build -v -x -work main.go

然后报错

# runtime/cgo

D:\Application\go\src\runtime\cgo\gcc_linux_amd64.c: In function '_cgo_sys_thread_start':

D:\Application\go\src\runtime\cgo\gcc_linux_amd64.c:62:2: error: unknown type name 'sigset_t'

sigset_t ign, oset;

^~~~~~~~

D:\Application\go\src\runtime\cgo\gcc_linux_amd64.c:67:2: error: implicit declaration of function 'sigfillset' [-Werror=implicit-function-declaration]

sigfillset(&ign);

^~~~~~~~~~

D:\Application\go\src\runtime\cgo\gcc_linux_amd64.c:62:16: error: unused variable 'oset' [-Werror=unused-variable]

sigset_t ign, oset;

^~~~

cc1.exe: all warnings being treated as errors

CGO和交叉编译,二者只能选其一。

有“CGO_ENABLED=1”的话,就不能交叉编译了

没有的话这个UI框架是没办法编译的

回答

以上是 【go】andlabs/ui(含CGO代码的库) 怎么编译其它平台的可执行文件 的全部内容, 来源链接: www.h5w3.com/114587.html

回到顶部