Closed glazzarini-belcan closed 6 months ago
This issue is tied to the version of Protogen that is being used to generate the public comm interface on aarch64 platforms, specifically version 2.17.a, whereas 2.12.d is the last confirmed working version.
As it sits, users can perform the following as a workaround: a) Generate the communication files as is instructed via the included script. b) Modify the three function calls within decodeGpsDataPacketStructure that use user when it should be pg_user. i.e. constructGpsEcefPosVel, computeDateAndTimeFromWeekAndItow, and constructGpsEcefUncertainty.
A more permanent fix: Fetch the v2.12.d release code for Protogen and build the application on aarrch64, replacing the orion-sdk-original/Protogen/Linux/aarch64/Protogen executable with the build output.
The issue is indeed related with previous protogen binaries that were built against 2.17.a. These have been corrected.
I'm getting compilation errors on a Linux aarch64 machine related to the
OrionPublicPacket.c
that doesn't occur when building on my x86 MacOS dev machine. I tried diffing the workingOrionPublicPacket.c
on my MacOS machine and the aarch64 Linux machine and found that the output on the Linux machine has inconsistent usage of a_pg_
prefix on the variables that seems to be causing the build errors below. On the MacOS x86 output these prefixes don't exist, so they're justuser
vs_pg_user
for example.Here's a snippet of this on the aarch64 output:
vs the x86:
And here's a screenshot of the diff with the line number 2384 that the build output is complaining about.
This seems to be resulting in the following failures? When I replace the
OrionPublicPacket.c
contents on the aarch64 Linux machine with the unprefixed output on from my x86 MacOS dev machine, these build errors no longer occur.