当我运行命令
时go build
我最终得到的应用程序太大,无法运行且出现大量错误。
我使用与教我的其他人相同的来源。我也很尴尬地问他这些问题。我理解不同的操作系统有所不同,但是它应该影响实际程序及其工作原理吗?
如何找出在已编译的应用程序中使用了哪个版本的Go以及使用了哪个编译器?它只是一个应用程序文件。
答案 0 :(得分:2)
通过执行var distinctTable = objDataTable.AsEnumerable()
.GroupBy(x => row.Field<string>("cfg"))
.OrderBy(x => x.Key)
.Select( x => new { PropName = x.Key, CountofProps = x.Count}).ToList();
,您将为当前文件夹中的go程序创建二进制文件。
创建二进制文件后,您无法确定使用哪个版本的 go build
来创建二进制文件。
要查找用于编译的Go
版本,请使用GO
或其他调试器。这是一个很棒的blog。
您可以使用
检查文件gdb
获取类似二进制文件的信息,以及它应该在哪个操作系统上运行。
例如:file mybinary
文件在ELF
上运行
Linux
等文件在Mach-O
上运行...
但是,您可以{/ 1}使用
编写Go代码Mac
所以这为cross compile
创建了一个二进制文件,即使我在GOOS=linux go build
/ linux (ELF file)