我试图利用Nim Posix库,特别是文件系统统计信息:
http://nim-lang.org/docs/posix.html#Stat
从我对其他Nim模块的测试中,导入和使用应该是这样的:
import posix
var stats: Stat
stat("/", stats)
echo stats.st_blksize
但编译器给了我一个
Error: undeclared identifier: 'Stat'
编译时是否需要添加一些手动包含,或者我是否遗漏了导入的内容?
答案 0 :(得分:5)
您可能会将这些行放入名为posix.nim
的文件中。这是一个问题,因为nim编译器将看到posix模块已经导入并且不会在标准库中查找任何其他模块。解决方法是将您的程序重命名为po.nim
或其他内容。
一旦你超越了这个不幸的行为,你就会发现代码没有编译,因为stat
proc会返回一个你没有分配给任何东西的cint
:
po.nim(4, 4) Error: value of type 'cint' has to be discarded
你可以discard the value。以下修改版本在nimrod编译器的稳定版本0.9.4上编译并运行:
import posix
var stats: Stat
discard stat("/", stats)
echo stats.st_blksize