Friday, April 29, 2022

Re: OOT port to 3.10 - bind error

Hi Tom,

A little more searching brought me here, where it becomes clear that
your problem is actually a too-old pygccxml!:

https://sources.debian.org/src/pygccxml/1.9.1-1/pygccxml/utils/utils.py/#L322

I remember seeing this somewhere on the mailing list/chat before, and I
think that the solution is to use pip to install a newer pygccxml since
nothing packaged for Ubuntu is new enough. Maybe someone else will chime
in who knows better.

Cheers,
Ryan

On 4/29/22 1:07 PM, Tom McDermott wrote:
> Thanks, Ryan.     The system has GCC 9.3.0 installed (Ubuntu 20.04)
> which the docs say supports c++17.
>
> pybind11 package manager version for Ubuntu 20.04 used to be 2.5.0.  The
> package manager has now reverted the standard version
> to 2.4.3  (which used to not work).   I installed pybind 2.5.0 using the
> tarball (link on the wiki for 3.9 OOT porting).   That
> pybind11 build might not support c++17, perhaps c++14 (based on strings
> in the pybind build directory)?
>
> Is some different version of pybind11 needed now for gnuradio 3.10 ?
>
> -- Tom, N5EG
>
>
>
> On Fri, Apr 29, 2022 at 9:40 AM Ryan Volz <ryan.volz@gmail.com
> <mailto:ryan.volz@gmail.com>> wrote:
>
> Hi Tom,
>
> GR 3.10 increased the CXX standard to c++17. Perhaps your compiler
> doesn't recognize -std=c++17, but did allow -std=c++14 with GR 3.9?
>
> My suspicion is that the following line has something to do with it:
>
> https://github.com/gnuradio/gnuradio/blob/main/gr-utils/blocktool/core/parseheader_generic.py#L323
> <https://github.com/gnuradio/gnuradio/blob/main/gr-utils/blocktool/core/parseheader_generic.py#L323>
>
> Cheers,
> Ryan
>
> On 4/29/22 11:35 AM, Tom McDermott wrote:
> > I am trying to port an existing 3.9 OOT to 3.10.   After the
> conversion
> > and edits based on the 3.10 directories,
> > the command to gr_modtool bind my_module fails with the error:
> >
> > Unknown -std=c++xx flag used
> >
> > I've greped the entire 3.10 project from its root and that string
> > is not in any of the project modules except in the
> > failed_conversions.txt file in the python bind output directory).
> >
> > The only place I can see an include pointing outside the OOT
> directory
> > is in the api.h file in the project include directory:
> > #include <gnuradio/attributres.h>
> >
> > That attributes.h file cannot be found anywhere  on my system.
> >
> > -- Tom, N5EG
> >
> >
> >
> >
>

No comments:

Post a Comment