Hi Rob,

you've got a point – in soft_register.hpp, there's classes that contain
exported symbols, it should probably be installed.

component_file.hpp, dirty_tracked.hpp and eeprom.h really only contain
implementation details;  I'm not the UHD maintainer, but I'd say these
files shouldn't get installed, as the types defined therein are only
used in non-public-API functionality, and thus are subject to change
without notice. Don't depend on these types existing!  

In fact, they can change without the UHD ABI compat version being
bumped, as far as I'd set a versioning policy. These are internals!

The problem you're setting yourself up, IMHO, is that even if you have
all the headers, the symbols (function bytecode) are still in libuhd.so
and not necessarily exported (that's what UHD_API does), so you might
end up coding something that compiles very fine and then fails to link
unless you start modifying default visibilities, at some surprising
point during development.

Hey, maybe there's an easy way out. Can you tell us what you're doing
in your custom multi_usrp, and why you're not simply modifying the
stock multi_usrp?

Best regards,
Marcus


On Thu, 2019-01-24 at 18:09 -0500, Rob Kossler via USRP-users wrote:
> While attempting to create a custom "multi_usrp" implementation
> (based on an arbitrary rfnoc graph), I found that the following files
> are not "installed"
> <uhd/types/eeprom.hpp>
> <uhd/types/component_file.hpp>
> <uhd/utils/soft_register.hpp>
> <uhd/utils/dirty_tracked.hpp>
> 
> I noticed this because I tried to compile a copy of "multi_usrp.cpp"
> out-of-tree. The compile failed because of missing include files (all
> of the above except component_file.hpp).  I then looked in the
> CMakeLists.txt files for these folders and sure enough, these files
> are not included.  I am wondering if this is intentional or a mistake
> - it seems the latter.
> 
> By the way, I also had an issue with needing
> <uhdlib/usrp/gpio_defs.hpp>, but this one is in the lib tree so I
> understand why it is not installed.  In any case, I just copied all
> of the needed include files out-of-tree and was able to compile.
> Rob
> _______________________________________________
> USRP-users mailing list
> USRP-users@lists.ettus.com
> http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com


_______________________________________________
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

Reply via email to