为了账号安全,请及时绑定邮箱和手机立即绑定

无法在旧的 Go 版本中执行程序

无法在旧的 Go 版本中执行程序

Go
开心每一天1111 2023-02-06 10:24:14
我正在尝试构建在 github 上找到的程序。( https://github.com/ginuerzh/gimme-bitcoin-address )我用golang编程半年了,从来没有遇到过程序缺少“go.mod”文件或者main函数的情况。构建指令看起来像这样,但是没有go.mod文件就无法构建,所以我使用go mod init ... ,但这不是我的问题。$ git clone git://github.com/vsergeev/gimme-bitcoin-address.git $ cd gimme-bitcoin-address $ go get code.google.com/p/go.crypto/ripemd160 $ go buildgo build当然没有建造任何东西值得注意的是它go get ...已过时,您必须导入"golang.org/x/crypto/ripemd160"项目结构如下所示:gimme-bitcoin-address/  |-- LICENSE  |-- README  |-- gimme-bitcoin-address.go  |-- gimme-bitcoin-address_test.go而且,如您所见,没有 main.go 文件,但和以前一样,这不是真正的问题。gimme-bitcoin-address.go只有一个能够构建的文件(xx_test.go 除外),我们看代码。而不是package main,有package btcaddr,还有什么最接近主函数的函数是func _main总而言之——我的问题是如何在克隆存储库后运行这个程序,或者如何修复它?我真的不知道,但是,也许这是一些老式的语法,但函数_main不会在任何地方被调用。这可能是个新手问题,但我无法处理。我希望也许有人会帮助我。
查看完整描述

1 回答

?
牛魔王的故事

TA贡献1830条经验 获得超3个赞

如果您只是尝试构建项目,则以下内容应该有效:


$ cd /tmp

$ go version

go version go1.18.5 linux/amd64


$ git clone https://github.com/vsergeev/gimme-bitcoin-address.git

Cloning into 'gimme-bitcoin-address'...

remote: Enumerating objects: 261, done.

remote: Total 261 (delta 0), reused 0 (delta 0), pack-reused 261

Receiving objects: 100% (261/261), 62.36 KiB | 1.02 MiB/s, done.

Resolving deltas: 100% (142/142), done.


$ cd gimme-bitcoin-address/

$ ls

ChangeLog.md  LICENSE  README.md  btckey  main.go


$ go mod init testing

go: creating new go.mod: module testing

go: to add module requirements and sums:

        go mod tidy


$ go mod tidy

go: finding module for package golang.org/x/crypto/ripemd160

go: finding module for package github.com/vsergeev/btckeygenie/btckey

go: downloading golang.org/x/crypto v0.0.0-20220826181053-bd7e27e6170d

go: downloading github.com/vsergeev/btckeygenie v1.1.0

go: found github.com/vsergeev/btckeygenie/btckey in github.com/vsergeev/btckeygenie v1.1.0

go: found golang.org/x/crypto/ripemd160 in golang.org/x/crypto v0.0.0-20220826181053-bd7e27e6170d


$ go build

$ ls -la

total 2124

drwxrwxrwx 1 ubuntu ubuntu     512 Aug 26 16:08 .

drwxrwxrwx 1 ubuntu ubuntu     512 Aug 26 16:07 ..

drwxrwxrwx 1 ubuntu ubuntu     512 Aug 26 16:08 .git

-rwxrwxrwx 1 ubuntu ubuntu      45 Aug 26 16:07 ChangeLog.md

-rwxrwxrwx 1 ubuntu ubuntu    1088 Aug 26 16:07 LICENSE

-rwxrwxrwx 1 ubuntu ubuntu    3616 Aug 26 16:07 README.md

drwxrwxrwx 1 ubuntu ubuntu     512 Aug 26 16:07 btckey

-rwxrwxrwx 1 ubuntu ubuntu     131 Aug 26 16:08 go.mod

-rwxrwxrwx 1 ubuntu ubuntu     394 Aug 26 16:08 go.sum

-rwxrwxrwx 1 ubuntu ubuntu    2860 Aug 26 16:07 main.go

-rwxrwxrwx 1 ubuntu ubuntu 2158646 Aug 26 16:08 testing

这是来自使用 Go 1.18.5 的 Linux 环境的 Ubuntu 20.04 Windows 子系统。


查看完整回答
反对 回复 2023-02-06
  • 1 回答
  • 0 关注
  • 166 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号