[yocto] Yocto Project support for Numeric/Scientific Python

Smith, Virgil (US) Virgil.Smith at flir.com
Wed Jan 23 16:34:09 PST 2019


Discussing only the question of making a SciPy recipe today:

> > Is there a current or relatively recent recipe for SciPy and related libraries?
>
> People have worked on it at least once before but found some problems with blas and atlas:
> https://lists.yoctoproject.org/pipermail/yocto/2018-March/thread.html#40348
> # Randy MacLeod
> Wind River Linux

Thanks Randy, my own brief foray landed on the following thread as the most promising lead:
https://lists.yoctoproject.org/pipermail/yocto/2018-March/040450.html

I didn't have any success with those pieces, but the telling point in that discussion are the patches to numpy (numpy.distutils).  When you dig into SciPy's installation instructions and therefore its setup.py file, you find that it is using code packaged into the numpy library as effectively its own configure/build toolchain.  It is full of Linux vs Windows vs MacOS distinctions and path probing for recognized compilers/tools.  Patching that into something that can be tuned for cross compiling was beyond my allowances for an "investigative effort".

I did manage to *compile* OpenBlas just by blending its standard build instructions (pure make based) with oe_runmake, a libgfortran DEPENDS/RDEPENDS, (FORTRAN_forcevariable = ",fortran" in local.conf), and some regex mapping from TUNE_FEATURES to the defines used by OpenBlas.

If I ever find out it actually worked (once), I'll post it in case someone has bandwidth to add
checks for mapping other MACHINE/TUNE... values to OpenBlas "TargetList.txt" entries, testing that it works in newer Yocto releases (I'm using Sumo), and add update-alternatives integration.



________________________________

Notice to recipient: This email is meant for only the intended recipient of the transmission, and may be a communication privileged by law, subject to export control restrictions or that otherwise contains proprietary information. If you receive this email by mistake, please notify us immediately by replying to this message and then destroy it and do not review, disclose, copy or distribute it. Thank you in advance for your cooperation.


More information about the yocto mailing list