将现有C代码移植到ARMv7

时间:2013-01-20 17:26:23

标签: c embedded arm

我最近获得了一个音频解码器的源代码,当使用MSVC编译时,它在Windows上执行得很好。

我被分配了将此解码器(用c编写)移植到ARMv7平台的工作。

由于我对这个领域很陌生,我不知道该怎么做。我已经搜索了很多内容,但找不到适合我特定情况的内容。

有关如何推出这样一个端口的任何建议都将不胜感激。

1 个答案:

答案 0 :(得分:3)

编译它,看看哪些休息是一个好的开始。

ARM是一个32位目标,现成的基于ARM的微控制器总是像x86一样是小端的,因此移植代码的问题通常很少。

如果代码对Win32进行OS调用,或者使用未移植到ARM的第三方库,那么当然您需要删除这些依赖项或端口到目标环境。同样,如果代码使用基于PC的硬件,例如声卡,那肯定需要进行调整。

如果代码质量在第一时间具有足够的可移植性,那么简单处理数据的代码和算法应该直接移植。然而,需要避免未定义或实现定义的编译器行为,因为编译器和目标之间可能存在差异。