cgo 和 Go 语言是两码事 您所在的位置:网站首页 cgo是什么机场 cgo 和 Go 语言是两码事

cgo 和 Go 语言是两码事

2023-09-06 00:57| 来源: 网络整理| 查看: 265

交叉编译不支持

Go对于交叉编译的支持是最好的。根据Go1.5交叉编译,你可以从任何支持的平台到其他任何平台,通过Go项目网站上的官方许可安装程序。

在默认情况下cgo是不允许交叉编译的。 通常这不构成问题,如果你的项目是纯Go的。 当你混合了C库的依赖, 你或者不得不放弃交叉编译你的产品,或者不得不花时间在寻找并且维护C的交叉编译工具链来达成你的目标。

或许你所做的产品仅通过TCP与客户端通信,并且你计划让它在SaaS(软件服务化 Software as a Service)的模型上运行,那么你根本不关心交叉编译就是合理的。然而,如果你在做一个其他人会用的产品,可能会整合到他们的产品中去,或许那是一个监控解决方案,或许那是一个你SaaS服务的客户端,那么你就把他们很容易交叉编译的特性给锁死了。

Go所支持的平台在持续地增长。Go 1.5增加了64位ARM和PowerPC的支持。Go 1.6增加了64位MIPS的支持, IBM的s390体系结构则在Go 1.7. RISC-V中提供。如果你的产品依赖C库,不仅你要面临以上描述的所有交叉编译问题,你还要确保你所依赖的C代码在Go所支持的新平台上能可靠运行——你必须要做这些运用C/Go混合提供的有限的调试。这又引出了下面的问题。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有