专用ARM设备的交叉编译单声道

时间:2012-07-04 14:42:04

标签: mono embedded scratchbox

目前正在开展工作,我们正在为一些arm-elf小端设备开发软件。我们目前在普通C中这样做,这很痛苦。对我们来说幸运的是,创建设备的公司提供了c ++支持,不幸的是,同一家公司搞砸了c ++库,因此项目在链接器编译阶段失败了,是的!

最近我一直在寻找替代方案,最有趣的替代方案是单声道。我可以看到为手臂编译单声道主要是在scratchbox中完成的,这似乎是一个很好的选择。但我也可以看到我需要设置类似于我的设备的rootfs ...但是,我无法找到rootfs在我的设备上是什么,因为我无法以任何方式连接到它。这是否会使用scratchbox编译单声道?如果是这样,还有另一种方法可以编译单声道吗?

1 个答案:

答案 0 :(得分:2)

您可以使用通常的配置支持进行交叉编译,如下所示:

CC = arm-linux-yourabi-gcc CFLAGS =“ - march = armv7-a -mfloat-abi = softfp”-DARM_FPU_VFP = 1 ./configure --host = arm-linux-yourabi --disable-mcs-构建

当然,您需要调整设备ABI和浮点支持。 --disable-mcs-build是必需的,因为你无法在你的系统上运行交叉编译单声道:你可以在你的开发盒上的一个单独的树中构建类库和C#代码,然后将它们复制到目标。 / p>

另外,与IanNorton在评论中写的相反,用C语言编写的单声道运行时(在C ++中对llvm的绑定非常小,这不是必需的,不在默认构建中,对你的设置)。