Makefile 在不使用make的情况下如何使用cgo?

Makefile 在不使用make的情况下如何使用cgo?,makefile,go,Makefile,Go,我使用一个定制的构建工具来编译go项目,我需要一种在我的项目中使用cgo的方法 问题是cgo文档只告诉您如何将其与make一起使用 我真正需要知道的是使用哪些工具处理哪些生成的文件,以及需要按什么顺序执行。我试图在go source目录中读取make.pkg,但我的努力失败了 我的测试dll非常简单,一个函数每次调用都返回1,使用这个函数的go代码也同样简单 在cgo项目上成功运行make所产生的控制台输出将非常有用。“我使用自定义生成工具来编译go项目,我需要一种在项目中使用cgo的方法。”

我使用一个定制的构建工具来编译go项目,我需要一种在我的项目中使用cgo的方法

问题是cgo文档只告诉您如何将其与make一起使用

我真正需要知道的是使用哪些工具处理哪些生成的文件,以及需要按什么顺序执行。我试图在go source目录中读取make.pkg,但我的努力失败了

我的测试dll非常简单,一个函数每次调用都返回1,使用这个函数的go代码也同样简单

在cgo项目上成功运行make所产生的控制台输出将非常有用。

“我使用自定义生成工具来编译go项目,我需要一种在项目中使用cgo的方法。”

。。。这种方法会带来问题。使用Makefile的标准方法简单、容易、经过验证、有文档记录,等等

我意识到我没有(直接)回答你的问题。相反,我的“答案”是:我强烈建议使用标准方式。不要通过选择其他不直接支持的选项为自己制造问题


也就是说,我认为有一种方法可以避免Makefiles,我只是从来没有去过那里,对不起。我通常很懒/时间很短,所以我用最简单/最快的方式完成事情。您可能想尝试相同的;-)

在目录中的32位Linux上运行
make
的输出:

cgo--life.go
创建以下文件:

_obj/_cgo_.o
_obj/life.cgo1.go
_obj/life.cgo2.c
_obj/_cgo_gotypes.go
_obj/_cgo_defun.c
_obj/_cgo_main.c
_obj/_cgo_flags
_obj/_cgo_export.c
_cgo_export.h

make文件对我不起作用。它引用了windows上不可用的所有unix/linux特定命令。我试图修改make文件以使其正常工作,但运气不太好。我想补充一点,在cgo项目上运行make的控制台输出将是非常宝贵的。这至少会极大地促进逆向工程所需的步骤“Go 1发行版将包括一个新工具
Go
,它将取代goinstall和make。”
_obj/_cgo_.o
_obj/life.cgo1.go
_obj/life.cgo2.c
_obj/_cgo_gotypes.go
_obj/_cgo_defun.c
_obj/_cgo_main.c
_obj/_cgo_flags
_obj/_cgo_export.c
_cgo_export.h