Closed carlesfernandez closed 6 years ago
Commit 730dae8754fa09a00df4642e26a6abe9c41ca526 seems to fix the issue. Right now populate_sdk seems broken in master, so I can't try it.
Thanks a lot Carles, I will try it and mention the result.
Dear @hassanessoufy,
the Krogoth version now builds lapack, blas, libgfortran and armadillo, so GNSS-SDR can be executed without problems (tested on the Zedboard). Thanks to @Arribas for working on this.
We will upload the generated SDK at http://gnss-sdr.org/docs/tutorials/cross-compiling/ in the following days.
The SDK is already online at http://gnss-sdr.org/docs/tutorials/cross-compiling/ Please pick the Krogoth release.
This issue has now been solved in all SDKs. New versions have been updated at http://gnss-sdr.org/docs/tutorials/cross-compiling/, so I'm closing this issue.
As it is right now, Armadillo is built "stand-alone" (without Lapack or Blas). This causes breaks at runtime when executing gnss-sdr, specifically when an Armadillo function that needs blas functions is called (e.g. interp1 or pinv). Armadillo recipe should depend on lapack, and this requires lapack shared libraries.
There are some caveats:
libgfortran has been broken for some time (required by lapack). Now I achieved to build it using the master branches of openembedded-core and meta-openembedded.
Lapack by default builds static libraries, and it requires some work in order to build shared libraries from the source code. Working on it. I'm taking http://stackoverflow.com/questions/23463240/how-to-compile-lapack-so-that-it-can-be-used-correctly-during-installation-of-oc as a reference.