这是一个复杂而困难的问题,但我会尽我所能分解它。它归结为当我为 ARM64 编译一个 rust 项目时(目标是在 rasp pi 4 上运行)。
大多数库都可以编译(704 / 740),但在编译zksync目录时会中断。golem的yagna 客户端是我正在编译的,我正在使用
目标 - target.arm-unknown-linux-musleabi 链接器 - arm-linux-gnueabihf-ld
我很想听听想法解决方案,或者我做错了什么,所以我可以让这个项目在 ARM 上运行。我得到的错误代码是
Ok(stat.blocks_available() as u64 * stat.fragment_size())
^^^^^^^^^^^^^^^^^^^^ expected `u64`, found `u32`
除其他错误外,所有错误都围绕转换整数时的位差异。这导致我怀疑 usize 是罪魁祸首,因为它基于 CPU 架构的大小,这可以解释 ARM 编译把它弄乱了,直到你必须处理 int (在转换时)才会出现。
让我知道您是否需要更多信息,尽我所能来封装问题