Thanks IOhannes for your explanations.
So I'm convinced be good to have a unified binary package. To achieve that I understand we need to ship only armv6 and aarch64 archs for RPi once armv7 can insert noise in Pd external loading system.
I don't know how to benchmark armv6 and armv7 compilations, but I think maybe armv7 binaries can be provided via github repository for users who want to try it. This because I'm thinking deken packages need to work every time.
About .pd_linux extension. If every pd compiled arch can run .pd_linux extension it can be loaded inadvertently and cause crash to load external. So we need ever to name binaries in the new way (new for me at least) aka l_i386 , l_amd64 , l_arm, l_arm64 and so on for other OSs...
The older Pd version which theoretically stay alive is 0.48.1-3 in Ubuntu Bionic which is supported until April 2023. If this version of Pd have deken support, how can we differ the unified version of a specific i386 and amd64 binaries shipped in distinct dek packages? I think maybe these old system can be supported via github repository once add more two packages teoretically would add noise to the majority of users (newest pd versions).
Make sense?
Em qua., 14 de abr. de 2021 às 19:34, Alexandre Torres Porres < porres@gmail.com> escreveu:
Em qua., 14 de abr. de 2021 às 16:47, IOhannes m zmölnig zmoelnig@iem.at escreveu:
regarding `armv6` and `armv7` in a single folder, i'm not sure whether this would work:
- if a `Pd-armv7` happens to see the `armv6` external first, it will
just load it (and never try to `armv7` binary)
- if a `Pd-armv6` happens to see the `armv7` external first, it will
just try load it: and i think the *loading* would succeed, leading to crashes whenever an illegal (armv7-)instruction is encountered.
Ok, I got questions now on how loading works. We know .pd_linux for instance, can be used generically for any architecture. But I guess Pd knows if that .pd_linux file is actually good or not. Like, let's get the zexy bundle, for instance, you have 4 linux versions there and one is .pd_linux, how do the other 3 know that this .pd_linux. is not for them, right? Same thing would be true for other generic extensions such as .dll I assume.
But then, there may be an exception here only for armv6 x armv7, where it just can't really know, right?
Pd-dev mailing list Pd-dev@lists.iem.at https://lists.puredata.info/listinfo/pd-dev