首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不能将lib.Const ( lib.Version类型的常数16777216 )用作lib.Version

不能将lib.Const ( lib.Version类型的常数16777216 )用作lib.Version
EN

Stack Overflow用户
提问于 2019-11-15 05:54:40
回答 1查看 55关注 0票数 0

我遇到了一个奇怪的错误。我有一个更大的项目,它可以很好地编译典型的go build。但是,当我切换到TinyGo时(v0.8.0)。我从下面的代码中得到了上面的错误:

代码语言:javascript
复制
func main() {

    _ = lib.NewObject{
         Version: lib.Const,
    }
}

我改了名字,以减少混淆,但符号是完全相同的。lib.Constlib.Version的常数。指针也不是。

我理解这是一个非常具体的问题,因为它在TinyGo领域。这更像是“备案”..。此外,我甚至不得不创建"tinygo“标签,因为这个问题非常具体。但为了补充更多细节:

在添加上述代码之前,它一直在编译tinygo build -target=wasm -o build/out.wasm src/main-wasm.go

  • ,确切地说,构建命令是
EN

回答 1

Stack Overflow用户

发布于 2019-11-15 21:03:23

这是编译器的一个bug:https://github.com/tinygo-org/tinygo/issues/726

它源于两次以不同的名称导入相同的包。在这种情况下,它是:

代码语言:javascript
复制
// file1:
import "./lib"

// file2:
import "../lib"

上面列出了包"lib“的两个实例。在使用普通Go编译器时,通常可以这样做。但TinyGo没有适当处理这一问题的机制。

建议将其附加到$GOPATH中,以防止使用相对路径:

代码语言:javascript
复制
// file1:
import "lib"

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

https://stackoverflow.com/questions/58871108

复制
相关文章

相似问题

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