Thursday, January 30, 2025

Re: Success : Build OOT module for conda install

Hi Ralf,

Do you have your code/packaging publicly available somewhere that I can
look at? I'd be happy to support your aims of making a package available
for others to use, even to the point of including it in the next
radioconda release if that's appropriate.

I think there's potentially a couple problems that you're running into.

1. The package that you've created still has issues (e.g. finding the
module blocks). This is where seeing exactly what you're doing can help
me to debug.
2. You're building on Linux and want to also create a Windows package.
This is where you would probably need to take advantage of public build
infrastructure to make your package, after you've got it working locally.

What I do to solve (2) is either make a package for conda-forge
(preferred) or build the packages out of a GitHub repository using
GitHub Actions CI. You can find examples of the latter in the
"radioconda" organization:

https://github.com/radioconda

Particularly, these are OOT modules with repositories containing a
.conda directory with packaging information. See e.g. my gr-radar
repository for a concrete example:

https://github.com/radioconda/gr-radar/tree/conda/.conda

Cheers,
Ryan

On 1/30/25 11:25 AM, Ralf Gorholt wrote:
> Hey Marcus,
>
> I know, but I normally prefer asking only questions that I really can't
> answer myself and when I find the solution after having asked the
> question I can imagine that some of you might find this annyoing :-)
>
> However, I still have a problem with my module. On my Linux system
> everything is fine. cmake config, build and install works. Unfortunately
> friends of mine that would like to test it are "Windows only" and need
> something simple to install. That's the reason why I need a package for
> a conda environment, preferably radioconda, because radioconda contains
> all necessary packages out-of-the-box.
>
> My module now builds on miniforge3 (with conda-build) and I can install
> it in a freshly installed radioconda environment on a different PC.
> However, when I start the flowgraph, I get an error message telling me
> that the block(s) in my module cannot be found:
>
> Traceback (most recent call last):
>   File "C:\Projekte\GNURadio\dvbt_rx_rtlsdr.py", line 409, in <module>
>     main()
>   File "C:\Projekte\GNURadio\dvbt_rx_rtlsdr.py", line 387, in main
>     tb = top_block_cls()
>          ^^^^^^^^^^^^^^^
>   File "C:\Projekte\GNURadio\dvbt_rx_rtlsdr.py", line 273, in __init__
>     self.dl5eu_dvbt_tps_decoder_0 = dl5eu.dvbt_tps_decoder(dtv.T2k, True)
>                                     ^^^^^^^^^^^^^^^^^^^^^^
> AttributeError: module 'gnuradio.dl5eu' has no attribute 'dvbt_tps_decoder'
>
> The same applies to the second block in my module.
>
> Perhaps someone who has experience with (radio)conda on Windows can give
> me a hint? I hesitate to delete and reinstall my development environment
> and start from scratch ;-)
>
> Regards,
>
> Ralf
>
> Am 30.01.2025 um 16:02 schrieb Marcus Müller:
>> Hey Ralf,
>>
>> don't apologize for asking the mailing list! That's desirable, and
>> especially explaining what you did to resolve the issue makes the
>> mailing list more valuable every day. Thank you!
>>
>> Best,
>> Marcus
>>
>> On 1/28/25 8:32 PM, Ralf Gorholt wrote:
>>> Hi,
>>>
>>> once again (sorry for that), please ignore my previous emails.
>>>
>>> After having cleaned up everything properly I can build my module
>>> package now. Strange, there must have been something left from my
>>> previous attempts to build the module somewhere in my gnuradio
>>> environment in conda that prevented conda from building the package
>>> correctly.
>>>
>>>
>>> Regards,
>>>
>>> Ralf
>>>
>>
>
>

No comments:

Post a Comment