Federico and all,

I've found a better solution for this issue (a little late, but better than never). If you use the latest version of castxml, the massive error problem is solved. Here's the steps:

1) Download the latest pre-built version of castxml at:

https://github.com/CastXML/CastXMLSuperbuild/releases

For Ubuntu 24.04, I used:

https://github.com/CastXML/CastXMLSuperbuild/releases/download/v2025.09.03/castxml-ubuntu-24.04-x86_64.tar.gz

2) Install the tar.gz file into any directory.

3) Set a path to the newly installed castxml binary. For example, I installed into /media/re/nvme/castxml:

export PATH=/media/re/nvme/castxml/bin:$PATH

gr_modtool bind now works good.

Ron

On 1/30/25 14:12, Federico 'Larroca' La Rocca wrote:
Hi,
Thanks (publicly) to Ron for his solution, it worked like a charm. For anyone finding a similar problem, I've used a Docker with a 22.04 Ubuntu (you may use mine at https://github.com/git-artes/docker-gnuradio/, although there are several other out there), migrated the OOT through the required gr_modtool bind, and it also worked perfectly in my "native" 24.04.
best
Fede

El mié, 29 ene 2025 a las 20:47, Ron Economos (<[email protected]>) escribió:

    I just tried gr_modtool bind on Ubuntu 24.04, and I'm getting the
    same
    results (huge error dump).

    For the last OOT I updated to 3.10, I just went back to Ubuntu
    20.04 and
    gcc 9.4.0. Then I checked that it builds okay on Ubuntu 24.04.

    I've pasted my Ubuntu 24.04 gr_modtool bind error dump onto the
    end of
    this e-mail.

    Ron

    On 1/29/25 14:44, Federico 'Larroca' La Rocca wrote:
    > Hi,
    >
    > I'm trying to port our gr-isdbt OOT so that it works as
    > "out-of-the-box" as possible in Ubuntu 24.04 (it's used in our
    course,
    > so I would like the student's life to be as simple as possible).
    >
    > I've had some problems regarding binding, so I've decided to add a
    > single block into a freshly created OOT, and I get the following
    error:
    >   Python bindings for ofdm_synchronization.h are out of sync
    > which makes sense since I've changed that file in the include
    > directory. However, when running gr_modtool bind
    ofdm_synchronization
    > I get several errors that end with
    >   fatal error: too many errors emitted, stopping now
    [-ferror-limit=]
    >   20 errors generated.
    >   Error occurred while running CASTXML xml file does not exist
    >
    > I've seen that this has been reported
    > (https://github.com/gnuradio/gnuradio/issues/6477) and that there's
    > even a PR that has been merged into the main code
    > (https://github.com/gnuradio/gnuradio/pull/7408).
    >
    > My question is then: what do you think would be the simplest way to
    > avoid this problem?
    >
    > thanks!
    gr_modtool bind alpbbheader_bb
    GNU Radio module name identified: atsc3
    In file included from /tmp/tmpaa_arrq6.h:1:
    In file included from
    /home/re/xfer/gr-atsc3/include/atsc3/alpbbheader_bb.h:13:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/block.h:14:
    In file included from /usr/include/c++/14/memory:63:
    In file included from /usr/include/c++/14/bits/memoryfwd.h:48:
    /usr/include/x86_64-linux-gnu/c++/14/bits/c++config.h:827:25: error:
           invalid suffix 'bf16' on floating constant
       827 |   typedef __decltype(0.0bf16) __bfloat16_t;
           |                         ^
    In file included from /tmp/tmpaa_arrq6.h:1:
    In file included from
    /home/re/xfer/gr-atsc3/include/atsc3/alpbbheader_bb.h:13:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/block.h:17:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/basic_block.h:15:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/io_signature.h:19:
    In file included from /usr/include/spdlog/fmt/fmt.h:31:
    In file included from /usr/include/fmt/core.h:15:
    /usr/include/c++/14/limits:1989:1: error: invalid suffix
           'F32' on floating constant
      1989 | __glibcxx_float_n(32)
           | ^
    /usr/include/c++/14/limits:1909:16: note: expanded from
           macro '__glibcxx_float_n'
      1909 |       { return __glibcxx_concat3 (__FLT, BITSIZE, _MIN__);
    }            \
           |                ^
    /usr/include/c++/14/limits:1894:34: note: expanded from
           macro '__glibcxx_concat3'
      1894 | #define __glibcxx_concat3(P,M,S) __glibcxx_concat3_ (P,M,S)
           |                                  ^
    /usr/include/c++/14/limits:1893:35: note: expanded from
           macro '__glibcxx_concat3_'
      1893 | #define __glibcxx_concat3_(P,M,S) P ## M ## S
           |                                   ^
    <scratch space>:232:1: note: expanded from here
       232 | __FLT32_MIN__
           | ^
    <built-in>:217:64: note: expanded from macro
           '__FLT32_MIN__'
       217 | #define __FLT32_MIN__
    1.17549435082228750796873653722224568e-38F32
    |                                                                ^
    In file included from /tmp/tmpaa_arrq6.h:1:
    In file included from
    /home/re/xfer/gr-atsc3/include/atsc3/alpbbheader_bb.h:13:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/block.h:17:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/basic_block.h:15:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/io_signature.h:19:
    In file included from /usr/include/spdlog/fmt/fmt.h:31:
    In file included from /usr/include/fmt/core.h:15:
    /usr/include/c++/14/limits:1989:1: error: no return
           statement in constexpr function
    /usr/include/c++/14/limits:1908:7: note: expanded from
           macro '__glibcxx_float_n'
      1908 |       min()
    _GLIBCXX_USE_NOEXCEPT                                       \
           |       ^
    /usr/include/c++/14/limits:1989:1: error: invalid suffix
           'F32' on floating constant
    /usr/include/c++/14/limits:1913:16: note: expanded from
           macro '__glibcxx_float_n'
      1913 |       { return __glibcxx_concat3 (__FLT, BITSIZE, _MAX__);
    }            \
           |                ^
    /usr/include/c++/14/limits:1894:34: note: expanded from
           macro '__glibcxx_concat3'
      1894 | #define __glibcxx_concat3(P,M,S) __glibcxx_concat3_ (P,M,S)
           |                                  ^
    /usr/include/c++/14/limits:1893:35: note: expanded from
           macro '__glibcxx_concat3_'
      1893 | #define __glibcxx_concat3_(P,M,S) P ## M ## S
           |                                   ^
    <scratch space>:235:1: note: expanded from here
       235 | __FLT32_MAX__
           | ^
    <built-in>:172:64: note: expanded from macro
           '__FLT32_MAX__'
       172 | #define __FLT32_MAX__
    3.40282346638528859811704183484516925e+38F32
    |                                                                ^
    In file included from /tmp/tmpaa_arrq6.h:1:
    In file included from
    /home/re/xfer/gr-atsc3/include/atsc3/alpbbheader_bb.h:13:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/block.h:17:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/basic_block.h:15:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/io_signature.h:19:
    In file included from /usr/include/spdlog/fmt/fmt.h:31:
    In file included from /usr/include/fmt/core.h:15:
    /usr/include/c++/14/limits:1989:1: error: no return
           statement in constexpr function
    /usr/include/c++/14/limits:1912:7: note: expanded from
           macro '__glibcxx_float_n'
      1912 |       max()
    _GLIBCXX_USE_NOEXCEPT                                       \
           |       ^
    /usr/include/c++/14/limits:1989:1: error: invalid suffix
           'F32' on floating constant
    /usr/include/c++/14/limits:1917:17: note: expanded from
           macro '__glibcxx_float_n'
      1917 |       { return -__glibcxx_concat3 (__FLT, BITSIZE, _MAX__);
    }           \
           |                 ^
    /usr/include/c++/14/limits:1894:34: note: expanded from
           macro '__glibcxx_concat3'
      1894 | #define __glibcxx_concat3(P,M,S) __glibcxx_concat3_ (P,M,S)
           |                                  ^
    /usr/include/c++/14/limits:1893:35: note: expanded from
           macro '__glibcxx_concat3_'
      1893 | #define __glibcxx_concat3_(P,M,S) P ## M ## S
           |                                   ^
    <scratch space>:238:1: note: expanded from here
       238 | __FLT32_MAX__
           | ^
    <built-in>:172:64: note: expanded from macro
           '__FLT32_MAX__'
       172 | #define __FLT32_MAX__
    3.40282346638528859811704183484516925e+38F32
    |                                                                ^
    In file included from /tmp/tmpaa_arrq6.h:1:
    In file included from
    /home/re/xfer/gr-atsc3/include/atsc3/alpbbheader_bb.h:13:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/block.h:17:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/basic_block.h:15:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/io_signature.h:19:
    In file included from /usr/include/spdlog/fmt/fmt.h:31:
    In file included from /usr/include/fmt/core.h:15:
    /usr/include/c++/14/limits:1989:1: error: no return
           statement in constexpr function
    /usr/include/c++/14/limits:1916:7: note: expanded from
           macro '__glibcxx_float_n'
      1916 |       lowest()
    _GLIBCXX_USE_NOEXCEPT                                    \
           |       ^
    /usr/include/c++/14/limits:1989:1: error: invalid suffix
           'F32' on floating constant
    /usr/include/c++/14/limits:1933:16: note: expanded from
           macro '__glibcxx_float_n'
      1933 |       { return __glibcxx_concat3 (__FLT, BITSIZE,
    _EPSILON__);
    }        \
           |                ^
    /usr/include/c++/14/limits:1894:34: note: expanded from
           macro '__glibcxx_concat3'
      1894 | #define __glibcxx_concat3(P,M,S) __glibcxx_concat3_ (P,M,S)
           |                                  ^
    /usr/include/c++/14/limits:1893:35: note: expanded from
           macro '__glibcxx_concat3_'
      1893 | #define __glibcxx_concat3_(P,M,S) P ## M ## S
           |                                   ^
    <scratch space>:247:1: note: expanded from here
       247 | __FLT32_EPSILON__
           | ^
    <built-in>:396:67: note: expanded from macro
           '__FLT32_EPSILON__'
       396 | #define __FLT32_EPSILON__
    1.19209289550781250000000000000000000e-7F32
    | ^
    In file included from /tmp/tmpaa_arrq6.h:1:
    In file included from
    /home/re/xfer/gr-atsc3/include/atsc3/alpbbheader_bb.h:13:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/block.h:17:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/basic_block.h:15:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/io_signature.h:19:
    In file included from /usr/include/spdlog/fmt/fmt.h:31:
    In file included from /usr/include/fmt/core.h:15:
    /usr/include/c++/14/limits:1989:1: error: no return
           statement in constexpr function
    /usr/include/c++/14/limits:1932:7: note: expanded from
           macro '__glibcxx_float_n'
      1932 |       epsilon()
    _GLIBCXX_USE_NOEXCEPT                                   \
           |       ^
    /usr/include/c++/14/limits:1989:1: error: invalid suffix
           'F32' on floating constant
    /usr/include/c++/14/limits:1936:52: note: expanded from
           macro '__glibcxx_float_n'
      1936 |       round_error() _GLIBCXX_USE_NOEXCEPT { return
    0.5F##BITSIZE; }     \
           |                                                    ^
    <scratch space>:249:4: note: expanded from here
       249 | 0.5F32
           |    ^
    In file included from /tmp/tmpaa_arrq6.h:1:
    In file included from
    /home/re/xfer/gr-atsc3/include/atsc3/alpbbheader_bb.h:13:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/block.h:17:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/basic_block.h:15:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/io_signature.h:19:
    In file included from /usr/include/spdlog/fmt/fmt.h:31:
    In file included from /usr/include/fmt/core.h:15:
    /usr/include/c++/14/limits:1989:1: error: no return
           statement in constexpr function
    /usr/include/c++/14/limits:1936:7: note: expanded from
           macro '__glibcxx_float_n'
      1936 |       round_error() _GLIBCXX_USE_NOEXCEPT { return
    0.5F##BITSIZE; }     \
           |       ^
    /usr/include/c++/14/limits:1989:1: error: use of undeclared
           identifier '__builtin_huge_valf32'
    /usr/include/c++/14/limits:1960:16: note: expanded from
           macro '__glibcxx_float_n'
      1960 |       { return __builtin_huge_valf##BITSIZE();
    }                        \
           |                ^
    <scratch space>:265:1: note: expanded from here
       265 | __builtin_huge_valf32
           | ^
    In file included from /tmp/tmpaa_arrq6.h:1:
    In file included from
    /home/re/xfer/gr-atsc3/include/atsc3/alpbbheader_bb.h:13:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/block.h:17:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/basic_block.h:15:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/io_signature.h:19:
    In file included from /usr/include/spdlog/fmt/fmt.h:31:
    In file included from /usr/include/fmt/core.h:15:
    /usr/include/c++/14/limits:1989:1: error: use of undeclared
           identifier '__builtin_nanf32'
    /usr/include/c++/14/limits:1964:16: note: expanded from
           macro '__glibcxx_float_n'
      1964 |       { return __builtin_nanf##BITSIZE("");
    }                           \
           |                ^
    <scratch space>:267:1: note: expanded from here
       267 | __builtin_nanf32
           | ^
    In file included from /tmp/tmpaa_arrq6.h:1:
    In file included from
    /home/re/xfer/gr-atsc3/include/atsc3/alpbbheader_bb.h:13:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/block.h:17:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/basic_block.h:15:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/io_signature.h:19:
    In file included from /usr/include/spdlog/fmt/fmt.h:31:
    In file included from /usr/include/fmt/core.h:15:
    /usr/include/c++/14/limits:1989:1: error: use of undeclared
           identifier '__builtin_nansf32'
    /usr/include/c++/14/limits:1968:16: note: expanded from
           macro '__glibcxx_float_n'
      1968 |       { return __builtin_nansf##BITSIZE("");
    }                          \
           |                ^
    <scratch space>:269:1: note: expanded from here
       269 | __builtin_nansf32
           | ^
    In file included from /tmp/tmpaa_arrq6.h:1:
    In file included from
    /home/re/xfer/gr-atsc3/include/atsc3/alpbbheader_bb.h:13:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/block.h:17:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/basic_block.h:15:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/io_signature.h:19:
    In file included from /usr/include/spdlog/fmt/fmt.h:31:
    In file included from /usr/include/fmt/core.h:15:
    /usr/include/c++/14/limits:1989:1: error: invalid suffix
           'F32' on floating constant
    /usr/include/c++/14/limits:1972:16: note: expanded from
           macro '__glibcxx_float_n'
      1972 |       { return __glibcxx_concat3 (__FLT, BITSIZE,
    _DENORM_MIN__); }     \
           |                ^
    /usr/include/c++/14/limits:1894:34: note: expanded from
           macro '__glibcxx_concat3'
      1894 | #define __glibcxx_concat3(P,M,S) __glibcxx_concat3_ (P,M,S)
           |                                  ^
    /usr/include/c++/14/limits:1893:35: note: expanded from
           macro '__glibcxx_concat3_'
      1893 | #define __glibcxx_concat3_(P,M,S) P ## M ## S
           |                                   ^
    <scratch space>:272:1: note: expanded from here
       272 | __FLT32_DENORM_MIN__
           | ^
    <built-in>:304:71: note: expanded from macro
           '__FLT32_DENORM_MIN__'
       304 | #define __FLT32_DENORM_MIN__
    1.40129846432481707092372958328991613e-45F32
    | ^
    In file included from /tmp/tmpaa_arrq6.h:1:
    In file included from
    /home/re/xfer/gr-atsc3/include/atsc3/alpbbheader_bb.h:13:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/block.h:17:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/basic_block.h:15:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/io_signature.h:19:
    In file included from /usr/include/spdlog/fmt/fmt.h:31:
    In file included from /usr/include/fmt/core.h:15:
    /usr/include/c++/14/limits:1989:1: error: no return
           statement in constexpr function
    /usr/include/c++/14/limits:1971:7: note: expanded from
           macro '__glibcxx_float_n'
      1971 |       denorm_min()
    _GLIBCXX_USE_NOEXCEPT                                \
           |       ^
    /usr/include/c++/14/limits:1992:1: error: invalid suffix
           'F64' on floating constant
      1992 | __glibcxx_float_n(64)
           | ^
    /usr/include/c++/14/limits:1909:16: note: expanded from
           macro '__glibcxx_float_n'
      1909 |       { return __glibcxx_concat3 (__FLT, BITSIZE, _MIN__);
    }            \
           |                ^
    /usr/include/c++/14/limits:1894:34: note: expanded from
           macro '__glibcxx_concat3'
      1894 | #define __glibcxx_concat3(P,M,S) __glibcxx_concat3_ (P,M,S)
           |                                  ^
    /usr/include/c++/14/limits:1893:35: note: expanded from
           macro '__glibcxx_concat3_'
      1893 | #define __glibcxx_concat3_(P,M,S) P ## M ## S
           |                                   ^
    <scratch space>:276:1: note: expanded from here
       276 | __FLT64_MIN__
           | ^
    <built-in>:431:65: note: expanded from macro
           '__FLT64_MIN__'
       431 | #define __FLT64_MIN__
    2.22507385850720138309023271733240406e-308F64
    |                                                                 ^
    In file included from /tmp/tmpaa_arrq6.h:1:
    In file included from
    /home/re/xfer/gr-atsc3/include/atsc3/alpbbheader_bb.h:13:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/block.h:17:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/basic_block.h:15:
    In file included from
    /opt/gnuradio-3.11.0git/include/gnuradio/io_signature.h:19:
    In file included from /usr/include/spdlog/fmt/fmt.h:31:
    In file included from /usr/include/fmt/core.h:15:
    /usr/include/c++/14/limits:1992:1: error: no return
           statement in constexpr function
    /usr/include/c++/14/limits:1908:7: note: expanded from
           macro '__glibcxx_float_n'
      1908 |       min()
    _GLIBCXX_USE_NOEXCEPT                                       \
           |       ^
    /usr/include/c++/14/limits:1992:1: error: invalid suffix
           'F64' on floating constant
    /usr/include/c++/14/limits:1913:16: note: expanded from
           macro '__glibcxx_float_n'
      1913 |       { return __glibcxx_concat3 (__FLT, BITSIZE, _MAX__);
    }            \
           |                ^
    /usr/include/c++/14/limits:1894:34: note: expanded from
           macro '__glibcxx_concat3'
      1894 | #define __glibcxx_concat3(P,M,S) __glibcxx_concat3_ (P,M,S)
           |                                  ^
    /usr/include/c++/14/limits:1893:35: note: expanded from
           macro '__glibcxx_concat3_'
      1893 | #define __glibcxx_concat3_(P,M,S) P ## M ## S
           |                                   ^
    <scratch space>:279:1: note: expanded from here
       279 | __FLT64_MAX__
           | ^
    <built-in>:368:65: note: expanded from macro
           '__FLT64_MAX__'
       368 | #define __FLT64_MAX__
    1.79769313486231570814527423731704357e+308F64
    |                                                                 ^
    fatal error: too many errors emitted, stopping now [-ferror-limit=]
    20 errors generated.
    Error occurred while running CASTXML xml file does not exist

Reply via email to