I need to think about some of these ideas, but wanted to thank both of
you for the replies. My inclination right now is to install the .py.xml
into the grc installation-wide “blocks” directory, and the .py into the
correct gr subdirectory for my additions,
and then have an install-time step that edits the .py.xml so that the
execfile line points directly to that .py file. (I’m presuming that a
hier-block .py.xml file, once installed in the “normal” place, won’t
try to mess with ~/.grc_gnuradio, but I haven’t tried it yet.) I’m
using the how-to-write-a-block framework, so the python install
directory would be available to the Makefile in the build/grc directory
(which right now has no build actions since it just is there for “make
install”)
Incidentally, I tried changing the execfile into “from dir import
class”, but it seemed to not quite produce the same state, in that I was
not able to instantiate the module after that. But I may have just done
something wrong and given up too early.
On Mar 15, 2012, at 5:07 PM, Tom R. wrote:
On Thu, Mar 15, 2012 at 3:28 PM, Porges, Donald
<[email protected]mailto:[email protected]> wrote:
Hi,
I’m trying to figure out a good way to distribute some custom heir
blocks that go with my low-level custom blocks I’ve written. The issue
is that the xml and py files are both generated into my ~/.grc_gnuradio
directory, and the xml files contain lines like
execfile(“/Users/myname/.grc_gnuradio/file.py”)
which obviously is not distributable. (Those lines get generated into
any grc output files that use the block, so editing it at the point of
use is not much of a solution.)
The obvious answer is to edit that line by hand, but the next problem is
that I don’t even know where the gnuradio directory is for other people
(could be a different host platform, for instance). There also seems to
be no “execfile search path” concept, which would allow me to perform
some light editing of the xml file to remove the absolute path. So how
do people share their created hierarchical blocks?
(I suppose the answer could be “give them my .grc_gnuradio files and
tell them to edit all of the references”, but that doesn’t make for a
nice delivery.)
Don Porges
Lyric Labs/Analog Devices
Does this help?
http://gnuradio.org/redmine/projects/gnuradio/wiki/GNURadioCompanion#Installing-the-XML-Block-Definition
Tom