I’m working in Ubuntu 8.04 writing code in C++ that access the USRP.
I’m trying to link to the usrp library (libusrp) with the -lusrp flag,
but g++ spits out the following error:
/usr/bin/ld: cannot find -lusrp
collect2: ld returned 1 exit status
In /usr/lib/ I find the following associated files:
libusrp.la
libusrp.so.0
libusrp.so.0.0.0
Previously, I had downloaded the gnuradio source code and compiled it to
gain access to the library in gnuradio/usrp/host/lib/legacy/.libs, and
in that case there’s also a libusrp.so file that’s absent in the above
directory. I don’t have a very deep understanding of shared libraries,
but it seems to me that my installation in /usr/lib is missing a file.
Is this an inadvertent omission from the libusrp0c2a package for Debian?
Previously, I had downloaded the gnuradio source code and compiled it to
gain access to the library in gnuradio/usrp/host/lib/legacy/.libs, and in
that case there’s also a libusrp.so file that’s absent in the above
directory. I don’t have a very deep understanding of shared libraries, but
it seems to me that my installation in /usr/lib is missing a file. Is this
an inadvertent omission from the libusrp0c2a package for Debian?
This is a known bug in the 3.1.1 packages for Ubuntu that was fixed in
release 3.1.2. What version of the deb files are you installing?
The short-term solution for you is to add a symlink: