Tom,
If I am following correctly, it looks like you are running gr_modtool (which is the 3.9 version since that is what you have installed in the VM) in the 3.8 OOT directory?
What happens when you run `gr_modtool bind` in the gr-hpsdr_3.9 directory
The process you are following seems sound to have created a 3.9 OOT with 3.9 modtool, and then copied code in from 3.8.
Josh
On Fri, Apr 9, 2021 at 12:08 PM Tom McDermott <tom.n5eg@gmail.com> wrote:
I am having difficulty porting an OOT module to gr 3.9.* VM with only gnuradio 3.9.0.0 installed.*The functional 3.8 OOT module is cloned into this VM.Installed is 3.9.0.0Python 3.8.5pygccxml 2.1.0pybind11 2.6.2* Created the gr-hpsdr_3.9 directory, populated it using gr_modtool newmod, added thetwo modules hermesNB and hermesWB with constructor parameters.In the 3.8 directory:hermesNB.h and hermesWB.h both exist in the /include directory, andhermesWB_impl.cc and hermesNB_impl.cc both exist in the /lib directoryEdited the ./python/Cmakelists.txt file to add the bindings subdirectory.From the directory gr-hpsdr_3.8/gr-hpsdr, I execute gr_modtool bindIt prompts for the block name. I used the base module name without any suffixes:hermesNB(also tried hermesNB.h, hermesNB_impl.cc, hermesWB, hermewWB.h, hermesWB_impl.cc)I always get the following error message:tom@tom-Standard-PC-Q35-ICH9-2009:~/gr-hpsdr_3.8/gr-hpsdr$ gr_modtool bind
GNU Radio module name identified: hpsdr
Which blocks do you want to parse? (Regex): hermesNB
/usr/lib/python3/dist-packages/apport/report.py:13: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses
import fnmatch, glob, traceback, errno, sys, atexit, locale, imp, stat
Traceback (most recent call last):
File "/usr/bin/gr_modtool", line 18, in <module>
cli()
File "/usr/lib/python3/dist-packages/click/core.py", line 764, in __call__
return self.main(*args, **kwargs)
File "/usr/lib/python3/dist-packages/click/core.py", line 717, in main
rv = self.invoke(ctx)
File "/usr/lib/python3/dist-packages/click/core.py", line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "/usr/lib/python3/dist-packages/click/core.py", line 956, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/usr/lib/python3/dist-packages/click/core.py", line 555, in invoke
return callback(*args, **kwargs)
File "/usr/lib/python3/dist-packages/gnuradio/modtool/cli/base.py", line 133, in wrapper
return func(*args, **kwargs)
File "/usr/lib/python3/dist-packages/gnuradio/modtool/cli/bind.py", line 46, in cli
run(self)
File "/usr/lib/python3/dist-packages/gnuradio/modtool/cli/base.py", line 152, in run
module.run()
File "/usr/lib/python3/dist-packages/gnuradio/modtool/core/bind.py", line 61, in run
file_to_process = os.path.join(self.dir, self.info['includedir'], self.info['blockname'] + '.h')
TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'Thus am stuck at this time. Is there a new or revised gr_modtool ?-- Tom, N5EG
No comments:
Post a Comment