使用 --os:any 编译 Nim 文件时出错
Error when compiling Nim file with --os:any
当我尝试用 --os:any
编译任何 Nim 文件时,我得到这个错误:
osalloc.nim(218, 10) Error: Port memory manager to your platform
为什么会弹出这个错误,我该如何解决?
此外,当我尝试使用 -d:useMalloc
和 --mm:orc/arc/none
进行编译时,它 确实 有效。但是,它仅适用于不导入 os
模块的文件。即使导入了 os
模块,我如何使用 --os:any
进行编译?
--os:any
基本上意味着:不支持 OS。它通常用于编写没有 OS 可用的内核或裸机微控制器代码。因此,它预计提供对 OS 服务的访问的 os
模块不适用于 os:any
。
此外,Nim 使用自定义内存分配器。如果它没有为您的平台实现(例如 os:any
),您可以通过将 -d:useMalloc
传递给 nim 编译器来要求 nim 使用平台的 malloc
(如果可用)。
当我尝试用 --os:any
编译任何 Nim 文件时,我得到这个错误:
osalloc.nim(218, 10) Error: Port memory manager to your platform
为什么会弹出这个错误,我该如何解决?
此外,当我尝试使用 -d:useMalloc
和 --mm:orc/arc/none
进行编译时,它 确实 有效。但是,它仅适用于不导入 os
模块的文件。即使导入了 os
模块,我如何使用 --os:any
进行编译?
--os:any
基本上意味着:不支持 OS。它通常用于编写没有 OS 可用的内核或裸机微控制器代码。因此,它预计提供对 OS 服务的访问的 os
模块不适用于 os:any
。
此外,Nim 使用自定义内存分配器。如果它没有为您的平台实现(例如 os:any
),您可以通过将 -d:useMalloc
传递给 nim 编译器来要求 nim 使用平台的 malloc
(如果可用)。