首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何让CMake使用go编程语言?

如何让CMake使用go编程语言?
EN

Stack Overflow用户
提问于 2011-11-02 10:03:03
回答 3查看 12.4K关注 0票数 21

我一直使用CMake与C++一起构建库和可执行文件,并希望在go编程语言中使用这种方法。

,我需要采取哪些步骤来配置CMake,以便它能够与go编程语言一起工作?

本质上,我的编译器是6g,它生成一个编译后的foo.6 --我通过6lfoo.6将它发送到一个链接器,我就完成了。我已经编译和安装了编译器和链接器。

显然,我可以为此编写一个简单的Makefile,但是在我的整个项目中始终使用CMake是很好的。

任何能帮我开始工作的建议。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-11-02 11:28:14

您可能希望实现CMake对Go的支持。粗略地说,它包括以下步骤:

CMakeDetermineGoCompiler.cmake模块是

  1. 创建的,它将为当前系统找到Go编译器。创建CMakeGoCompiler.cmake.in --一个模板,由CMakeDetermineGoCompiler.
  2. Create CMakeTestGoCompiler.cmake,模块进行配置,该模块将编译一个简单的go源代码,以检查编译器是否工作。创建CMakeGoInformation.cmake,,将设置一些与语言相关的变量(CMAKE_GO_LINK_EXECUTABLE等)

这些东西应该放在CMAKE_MODULES_DIR中。作为参考,您可以查看Java/CXX支持是如何实现的。

或者,如果不想处理这些内部问题,可以通过创建宏()来解决您的任务,这将创建一系列自定义目标/命令(请参阅add_custom_{target,command}()文档)。

票数 24
EN

Stack Overflow用户

发布于 2011-11-02 16:33:29

不使用CMake (或任何其他构建系统)最符合您的利益。

Go有一种简单的内置方式来构建包:go build (这也使go getgo install工作)。根据设计,go build不需要额外的工具,比如make或cmake。

如果您使用CMake (或任何其他构建系统),您只会使自己(如果您计划使用他人开发的库)或其他人(如果您计划开发供他人使用的库)变得更加困难。

票数 2
EN

Stack Overflow用户

发布于 2020-11-20 00:19:35

我创建了一个简单的go.cmake模块,用于结合C/C++和Go使用CMake。

https://github.com/krumberg/cmake_go

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7978517

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档