discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] gr-rds


From: Michael Dickens
Subject: Re: [Discuss-gnuradio] gr-rds
Date: Tue, 14 Jan 2014 08:16:47 -0500

Hi Ulf - Your directory listings look OK.  Ideally, you'd actually use 
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages
 as the Python files install location since that's the normal for MacPorts.  
But, using /opt/local/lib/python2.7/site-packages is OK and an easy default.  
Both should be in the default PYTHONPATH; you can see this via the command
{{{
python -c "import sys; print sys.path"
}}}

So, you should not have to set PYTHONPATH to anything special for this install. 
 If you have Python files installed elsewhere, you might still need it for 
those files.

The "otool" listing for the RDS library:
{{{
> libgnuradio-rds.dylib:
        libgnuradio-rds.dylib (compatibility version 0.0.0, current version 
0.0.0)
}}}
is fine since nobody is going to be linking against it.  Ideally, this first 
entry would be the actual path/name combination 
("/opt/local/lib/libgnuradio-rds.dylib"), but since it won't be used for 
anything else it doesn't really matter.  If you want to correct it, you can do 
so via:
{{{
install_name_tool -id /opt/local/lib/libgnuradio-rds.dylib libgnuradio-rds.dylib
}}}

If you do the "otool" command on "_rds_swig.so", I think you'll find that it 
contains:
{{{
        _rds_swig.so (compatibility version 0.0.0, current version 0.0.0)
        libgnuradio-rds.dylib (compatibility version 0.0.0, current version 
0.0.0)
}}}
and this is where the issue is because the dylib cannot be found since DYLD 
does not know where to look for it (DYLD can do a lot of things, but it does 
-not- do arbitrary searches, generally, very well).  Again, the actual path to 
the .so is not important since this library ("shared object") will never be 
linked to, just used by Python.

You can change this incorrect linkage via:
{{{
install_name_tool -change libgnuradio-rds.dylib 
/opt/local/lib/libgnuradio-rds.dylib _rds_swig.so
}}}
and then Python should be able to load RDS correctly.

Hope this helps! - MLD

On Jan 14, 2014, at 12:51 AM, Ulf Söderberg <address@hidden> wrote:
> These are the files that gets installed in 
> /opt/local/lib/python2.7/site-packages/rds:
> 
> -rwxr-xr-x  1 root  admin  373688 Jan 14 06:39 _rds_swig.so
> 
> In /opt/local/lib, the only file installed is:
> 
> -rwxr-xr-x    1 root      admin    549160 Jan 14 06:39 libgnuradio-rds.dylib
> 
> The command "otool -L libgnuradio-rds.dylib" renders the following:
> 
> libgnuradio-rds.dylib:
>       libgnuradio-rds.dylib (compatibility version 0.0.0, current version 
> 0.0.0)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]