我需要调整一系列的代码和脚本为raspberry Pi (第1代)(这是运行一个ARM11处理器)运行在一个全赢家H6-基于板卡中央处理器( ARM Cortex-A53)。
我已经把CMAKE_SYSTEM_PROCESSOR从ARCH armv7l换成了ARCH aarch64。但是,要启动我拥有的cmake编译命令字符串
cmake -D CMAKE_CXX_FLAGS="-march=armv7-a" /..path我想用-march=armv7-a代替-march=armv8-a。
现在我的疑问是:为Allwinner H6 64位编译是否正确?为什么我不能直接把aarch64,而不是armv8-a?最后,"armv8“和”ARMv8-a“有什么区别?
对不起,我有点搞不懂。
发布于 2019-06-04 12:36:21
-march=armv8-a是正确的,但不像-mtune=cortex-a53那么具体,因为Allwinner H6是一个皮质-A53。-march=aarch64而不是-march=arm-v8-a,因为这太通用了:毕竟,您已经可以指定‘armv8-a’, ‘armv8.1-a’, ‘armv8.2-a’, ‘armv8.3-a’, ‘armv8.4-a’ and ‘armv8.5-a’,作为文档化的这里。ARMv8-A,ARMv8-M和ARMv8-R的统称。根据arm术语,A、R和M是“概要文件”,并针对不同类型的应用程序:有关更多细节,请参见这里、这里和这里。https://stackoverflow.com/questions/56433258
复制相似问题