Difference between armv7hl & armhf?
is there any difference between armv7hl (Sailfish, openSuSE, fedora...) and armhf? I'm asking because zypper will not let me install armhf-packages and rpm is doing it only with the ignorearch switch...
We have moved to a new Sailfish OS Forum. Please start new discussions there.
is there any difference between armv7hl (Sailfish, openSuSE, fedora...) and armhf? I'm asking because zypper will not let me install armhf-packages and rpm is doing it only with the ignorearch switch...
my experience so far is: executing armhf
binaries works pretty well. They even seem to be more restrictive than Jollas armv7hl
implementation. Running an armhf compiler on device, i'm not able to use the VFPv4 extensions, nor all 32 64-bit floating point registers. Only 16 of them are accessible, like the minimum hardware requirements of armhf are telling you...
> readelf -A some-armhf-executable
Tag_CPU_name: "7-A"
Tag_CPU_arch: v7
Tag_CPU_arch_profile: Application
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2
Tag_FP_arch: VFPv3-D16
for an app built with Jolla SDK this looks:
> readelf -A jollaSDK-armv7hl-executable
Tag_CPU_name: "7-A"
Tag_CPU_arch: v7
Tag_CPU_arch_profile: Application
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2
Tag_FP_arch: VFPv3
Tag_Advanced_SIMD_arch: NEONv1
Tag_ABI_PCS_wchar_t: 4
Tag_ABI_FP_denormal: Needed
Tag_ABI_FP_exceptions: Needed
Tag_ABI_FP_number_model: IEEE 754
Tag_ABI_align_needed: 8-byte
Tag_ABI_align_preserved: 8-byte, except leaf SP
Tag_ABI_enum_size: int
Tag_ABI_HardFP_use: SP and DP
Tag_ABI_VFP_args: VFP registers
Tag_CPU_unaligned_access: v6
for an application build on Jolla1 with CFLAGS=-mtune=cortex-a15 -mfpu=neon-vfpv4 you get some changes:
> readelf -A jolla1-ondevicebuild-armv7hl-executable
...
Tag_FP_arch: VFPv4
Tag_Advanced_SIMD_arch: NEONv1 with Fused-MAC
...
Tag_MPextension_use: Allowed
Tag_DIV_use: Allowed in v7-A with integer division extension
Tag_Virtualization_use: TrustZone and Virtualization Extensions
armv7hl
seems to have less hardware requirements than armhf
, which seems to require a VFP3. If both ABIs are similar enough (FP parameter calling conventions), armhf
binaries may run on armv7hl
hardware, and if it does not make use of VFP3 features, it may even work correctly. I would not rely on that; recompilation preferred.
@Maus that's not correct: armv7hl requires VPF3, https://wiki.merproject.org/wiki/OBS_architecture_naming and uses hardfp ABI, so it should work even with VFP3 features https://lists.debian.org/debian-arm/2012/03/msg00004.html ... and since armv7hl equals armv7tnhl Thumb2 and NEON should not be a problem either
lpr ( 2016-05-20 13:47:39 +0200 )editThis thread is public, all members of Together.Jolla.Com can read this page.
Asked: 2016-05-18 23:45:46 +0200
Seen: 9,757 times
Last updated: Sep 13 '16
[HELP] Download zypper on pc [closed] [not a question]
Fatal error: Authentication failed (is SSU set up correctly?) [answered]
upgrade from terminal ( pkcon zypper ssu )
SDK : allow for multi- package selection in "manage target" [released]
How to install .deb packages on Jolla? [answered]
Does all Jolla phone SW work on Jolla tablet? [answered]
There's no point in adding the tag
lpr ( 2016-06-01 16:04:00 +0200 )editfile-format
repeatedly, because the file-format of armhf packages is .deb and the one of armv7hl is .rpm which can be converted into each other by using scripts (e.g. alien). But this is not really part of the question! The question is more aboutbuild-targets
of executables and why zypper does not like packages with binaries made for target armhf...