carlesfernandez / meta-gnss-sdr

An OpenEmbedded layer for GNSS-SDR
MIT License
9 stars 9 forks source link

gnss-sdr-dev-image do_rootfs cannot find armadillo #3

Open tjade273 opened 5 years ago

tjade273 commented 5 years ago

Running bitbake gnss-sdr-dev-image gives me the error

   Collected errors:
 * Solver encountered 1 problem(s):
 * Problem 1/1:
 *   - nothing provides armadillo needed by packagegroup-gnss-sdr-base-1.0-r0.all
 *
 * Solution 1:
 *   - do not ask to install a package providing packagegroup-gnss-sdr-base

running bitbake -b armadillo completes successfully.

If I remove the armadillo dependency from

meta-gnss-sdr/recipes-images/packagegroups/packagegroup-gnss-sdr.bb

then the build finishes successfully but compiling gnss-sdr using the sdk fails due to missing BLAS, which is presumably due to the missing armadillo.

carlesfernandez commented 5 years ago

What branch are you using?

tjade273 commented 5 years ago

Rocko

carlesfernandez commented 5 years ago

It's a little bit outdated, please use Thud. Anyway, in Rocko this should work since armadillo is included in packagegroup-gnss-sdr-base. Let me see if I can reproduce the error.

carlesfernandez commented 5 years ago

Hi, after a couple of changes (see recent commits) I've been able to build and use Rocko. Please let me know if those updates make it work for you.

tjade273 commented 5 years ago

Thanks for the help, I've updated most of my layers to at least be up to date with the rocko branches, including this one, but I'm still getting the same error. I've tried using both the rpm and ipk packagers.

The similar rpm packager error is

Last metadata expiration check: 0:00:00 ago on Fri 14 Jun 2019 02:58:12 PM UTC.
Error:
 Problem: conflicting requests
  - nothing provides armadillo needed by packagegroup-gnss-sdr-base-1.0-r0.noarch

The only other things I've touched within the meta-gnss-sdr layer is adding HDF5 config files for aarch64 and setting my -DPYTHON_EXECUTABLE for building gnuradio.

tjade273 commented 5 years ago

Checking for the built package, I notice that the build/tmp-glibc/deploy/rpm/aarch64 directory contains only armadillo-dbg-7.800.2-r0.aarch64.rpm and armadillo-dev-7.800.2-r0.aarch64.rpm so maybe it's not packaging the actual package, only the development headers? I don't know why that would be the case