Hey Dan,
In TurboActivate 4.1 (coming very soon) we've re-done how we're making ARM builds. So, we'll have:
armv4t (soft float) which can also be linked with armv7-a soft-float buildsarmv7-a (hard float)armv8-a (hard float)aarch64 (hard float)
Hi there,I'm trying to use libTurboActivate on a raspberry pi. It's an rpi 3 model b. Ideally I need something running on a debian based os.I have noticed a couple of threads about this subject, but I can't see anything that helps me.The problem that I'm getting is that my code will compile and link no problem, but whatever I do, at runtime it tells me that the library is not found. It's not a path problem as all the other libraries that I use are in the same place.
I've tried raspbian stretch, and I tried all provided architectures of the libTurboActivate library. Both the v4 and v7 library say not found, and the v8 version says that it can't load a 64 bit library.Something that I noticed with raspbian is that the whole operating system appears to be built for armv6 architecture, so I figured it may be that.
With that in mind, I've installed and tried Ubuntu MATE. This reports to be an armv7 architecture (the same as the libTurboActivate library). It still shows the same problem - not found.
Here is the output of readelf -A for my application and the libTurboActivate library:
readelf -A libTurboActivate.so...File Attributes 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_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_optimization_goals: Aggressive Speed
readelf -A plgman...File Attributes 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 Tag_ABI_PCS_wchar_t: 4 Tag_ABI_FP_rounding: Needed 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_VFP_args: VFP registers Tag_CPU_unaligned_access: v6
They look pretty close to me! One thing though is that I "think" that MATE maybe be using hardfloat, and that maybe libTurboActivate is built for softfloat. I must admit I don't know enough about it to confirm or deny this, but I believe that the presence of Tag_ABI_VFP_args means hardfloat, and presumably the lack of it means softfloat.
So my question is, is there anybody that has this working on a Raspberry PI that could give me some advice? Does anyone know of a debian based operating system that uses softfloat that I could try (I can't find any) to at least try to confirm my suspicions?
Finally, if it does turn out to be a hard float vs soft float, what are the chances of getting a hard float armv7 build?
Hey Dan,
In TurboActivate 4.1 (coming very soon) we've re-done how we're making ARM builds. So, we'll have:
armv4t (soft float) which can also be linked with armv7-a soft-float buildsarmv7-a (hard float)armv8-a (hard float)aarch64 (hard float)
Ok, thank you. I guess that means that the current v7 library is indeed soft float, and that this is very likely the problem that I'm encountering.
I know it's hard to nail down dates and times but do you think you could give a rough ball park as to the 4.1 release? Is it likely months, or weeks, or days? It's just to give me an idea so I know how best to proceed with my project. If it's not too long then I'll just wait for the new version 🙂
Thanks again for your help.
Weeks. Shoot us an email and well send you pre-release armv4t and armv7-a builds.