我试图确保我了解有关不同 ARM 架构(例如 ARMv5 与 ARMv7)编程的一些基础知识。
我有一个 python 程序,已移植到较新的 Raspberry Pi B(Cotrex-7A)。要让它在 ARMv6 或 ARMv5 架构上运行需要什么?该程序无需 GPU 即可进行简单的波形处理和串行通信。
我的理解是,我必须为每种架构重新编译程序,以适应不同的指令集。我还需要运行相同版本的 Linux(在本例中为 Wheezy),但是这里我还需要考虑更多吗?
如果它在 ARMv7 中编译,是否有可能无法在 ARMv6 或 ARMv5 上编译
谢谢
最佳答案
Python 的好处是你很少需要担心 底层架构。 Python 是解释型的,所以解释器会做 处理 32 位、64 位、小端、大端的所有辛苦工作, 软浮点或硬浮点等。
此外,你不需要编译你的Python,因为解释器会 如果您同时提供 .py 和 .pyc 或 .pyo 文件,还可以编译您的源代码 而后者与需要的不匹配。编译python是 与编译 C 不同,例如,Python 的目标是虚拟的 机器,而不是真正的硬件。生成的 .pyc 或 .pyo 文件是 然而与特定的 python 版本相关。
一般都会提供源文件,如果没有.pyc或.pyo, 那么第一次运行 python 时它会创建它们(如果它有 文件权限)。第二次运行将使用编译后的版本, 如果来源没有改变。
关于python - 在不同的 ARM 架构上进行编程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32376618/