Skip to content
This repository has been archived by the owner on Aug 30, 2022. It is now read-only.

Hunter builds don't install the downloaded dependencies #44

Closed
ringerc opened this issue Jan 26, 2018 · 6 comments
Closed

Hunter builds don't install the downloaded dependencies #44

ringerc opened this issue Jan 26, 2018 · 6 comments

Comments

@ringerc
Copy link
Contributor

ringerc commented Jan 26, 2018

When Jaeger does its default "download it from the Internet" build, the resulting install is unusable:

  • there are no opentracing headers installed
  • there's no libyaml-cpp header or library installed

etc.

So it should probably either disable "make install" for Hunter builds and document how to do a normal install, or install all the built dependencies too. I'd suggest complaining if you try to use /usr/local as an install target in this case and suggesting another target.

It'd also be nice to document that hunter writes stuff to ~/.hunter not within the jaeger-cpp builddir. The built dependencies seem to have been dropped in .hunter/_Base/7128985/340d525/3420b24/Install, which of course jaeger-cpp knows to add to the CPATH and LIBRARY_PATH ... but tools using jaeger-cpp don't.

A make dependencies-install or something would probably help.

@ringerc
Copy link
Contributor Author

ringerc commented Jan 26, 2018

Likely related:

@ringerc
Copy link
Contributor Author

ringerc commented Jan 26, 2018

Results in failures like

In file included from /usr/local/include/jaegertracing/baggage/RestrictionsConfig.h:21:0,
                 from /usr/local/include/jaegertracing/Config.h:21,
                 from /usr/local/include/jaegertracing/Tracer.h:28,
                 from myapp_file.cpp
/usr/local/include/jaegertracing/utils/YAML.h:24:27: fatal error: yaml-cpp/yaml.h: No such file or directory
 #include <yaml-cpp/yaml.h>
                           ^
compilation terminated.

The app embedding jaeger-cpp isn't using hunter, and cannot use hunter.

@isaachier
Copy link
Contributor

So that is true. Hunter does not to global installs. That is the point, to allow for multiple different versions and builds of the same library. If you want to use the Jaeger C++ client without Hunter, the answer is pretty straightforward: look for the hunter_add_package/find_package calls and install those libs. Yes I should add proper documentation, but in lieu of that, this workaround should suffice.

@isaachier
Copy link
Contributor

Also, don't forget HUNTER_ENABLED=0.

@ringerc
Copy link
Contributor Author

ringerc commented Jan 27, 2018 via email

@ringerc
Copy link
Contributor Author

ringerc commented Jan 28, 2018

OK, so this is by design. You can't use jaeger-cpp's default Hunter build unless you also use Hunter.

Cool, document and done. I'll deal with this as part of the coming PR for the README.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants