首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未定义名称'float‘:Starklark / Bazel

未定义名称'float‘:Starklark / Bazel
EN

Stack Overflow用户
提问于 2021-01-10 05:45:01
回答 2查看 92关注 0票数 2

我正在尝试将浮点操作添加到.bzl文件中。根据Bazel globals规范,应该按照Starlark规范定义float()函数。但是,当我尝试添加float()时,我得到以下错误:

ERROR: /home/username/code/project/foo.bzl:4:3: name 'float' is not defined

还有什么需要我导入的吗?我假设因为float()关键字是在全局名称空间中定义的,所以我不需要导入它。根据Bazel网站页面上的starlark spec page,不支持float,但这直接与float() specification on the global page冲突。

更新:运行Bazel 3.7.1

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-01-10 06:35:36

如果你使用build Bazel from master,它已经支持float了。我通过别名potato将Bazel从master添加到我的系统中。Bazel 3.7.2 (及更早版本)不支持float类型。我猜我们不会在3.7.x中看到任何浮动支持。

如果需要在Bazel 3.7.2及更早版本中使用浮点运算,则必须使用整数技巧实现浮点运算。请参见实例here

也许你可以实现你的目标,而不需要像here那样使用float,或者退回到一个“普通的”Python脚本。

顺便说一下:在文档中,你可以切换到当前使用的Bazel版本-它将为你提供404 for float和Bazel 3.7.2及更早的版本。仅限master,有文档可用。

票数 2
EN

Stack Overflow用户

发布于 2021-01-10 05:46:54

支持浮点数的Bazel版本尚未发布。据推测,4.0以后的版本将支持它们。

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

https://stackoverflow.com/questions/65647915

复制
相关文章

相似问题

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