Friday, August 2, 2019

Re: [Discuss-gnuradio] [announcement] GNU Radio 3.8 Release Candidate 2

Since it's GNU Radio 3.8, you need the Python 3 version of scipy.

sudo apt-get install python3-scipy

The qa_pmt failure probably has to do with longs being 32-bits on your system. Even though the Pi3B+ has a 64-bit CPU, the OS may be 32-bit. You can check the build/Testing/Temporary/LastTest.log file. On my ARM 32-bit system, I get:

======================================================================
ERROR: test15 (__main__.test_pmt)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/ubuntu/xfer/gnuradio/gnuradio-runtime/python/pmt/qa_pmt.py", line 128, in test15
    x_pmt = pmt.from_long(const)
  File "/home/ubuntu/xfer/gnuradio/build/gnuradio-runtime/python/pmt/../../swig/pmt_swig.py", line 2361, in from_long
    return _pmt_swig.from_long(x)
OverflowError: in method 'from_long', argument 1 of type 'long'

======================================================================
ERROR: test18 (__main__.test_pmt)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/ubuntu/xfer/gnuradio/gnuradio-runtime/python/pmt/qa_pmt.py", line 153, in test18
    x_pmt = pmt.from_long(const)
  File "/home/ubuntu/xfer/gnuradio/build/gnuradio-runtime/python/pmt/../../swig/pmt_swig.py", line 2361, in from_long
    return _pmt_swig.from_long(x)
OverflowError: in method 'from_long', argument 1 of type 'long'

The corresponding tests in qa_pmt.py are:

    def test15(self):
        const = self.MAXINT32 + 1
        x_pmt = pmt.from_long(const)
        s = pmt.serialize_str(x_pmt)
        deser = pmt.deserialize_str(s)
        self.assertTrue(pmt.equal(x_pmt, deser))
        x_long = pmt.to_long(deser)
        self.assertEqual(const, x_long)

    def test18(self):
        const = self.MININT32 - 1
        x_pmt = pmt.from_long(const)
        s = pmt.serialize_str(x_pmt)
        deser = pmt.deserialize_str(s)
        self.assertTrue(pmt.equal(x_pmt, deser))
        x_long = pmt.to_long(deser)
        self.assertEqual(const, x_long)

In both cases, the test is trying to pass a number that doesn't fit into a 32-bit long into pmt.from_long().

Ron

On 8/2/19 19:46, Nate Temple wrote:
Hi Barry,

Looks like you might be missing scipy https://github.com/gnuradio/gnuradio/issues/1539

Regards,
Nate Temple

On Fri, Aug 2, 2019 at 7:16 PM Barry Duggan <barry@dcsmail.net> wrote:
Thank you Ron and Nate!

With your help I was able to git, build, and test rc2.

As before, some of the tests failed:

sudo make test

98% tests passed, 6 tests failed out of 362

Total Test time (real) = 1455.94 sec

The following tests FAILED:
        150 - qa_pmt (Failed)
        243 - qa_polar_decoder_sc (Failed)
        244 - qa_polar_decoder_sc_list (Failed)
        245 - qa_polar_decoder_sc_systematic (Failed)
        246 - qa_polar_encoder (Failed)
        247 - qa_polar_encoder_systematic (Failed)
Errors while running CTest
make: *** [Makefile:86: test] Error 8

Cheers!
--
Barry Duggan KV4FV

1 comment:

  1. Hi,
    I've installed python3-scipy and I still get the error above.
    Did anyone else get the same thing?

    ReplyDelete