Only one --hash-style in embedded Linux. Why?
===

all.

Background:
I was trying to get a software package built and deployed into rootfs with openembedded-based arago (www.arago-project.org). Unfortunately the software package includes prebuilt shared libs. As far as I understand, Arago builds the entire Linux distro with --hash-style=gnu, while those shared libs have been built with --hash-style=sysv, I suspect. At least the build stops with "No GNU_HASH in the ELF binary" QA issue.

I understand what hashes are for. But I guess I do not understand how they are being used when the system is running.

Why is it necessary to have one hash style for all ELFs in the system?
Can't dynamic linker figure the hash style on the fly and just use it?