jucipp icon indicating copy to clipboard operation
jucipp copied to clipboard

Dependencies from header only libraries

Open zalox opened this issue 9 years ago • 5 comments

I've been thinking about our dependency stack quite a lot.

A lot of people are refusing to compile programs with for instance boost dependencies. [1]

Kodi is commiting headers into their repo to resolve header only libs [2]

I see the following pros and cons.

Pros:

  • All platforms will use the same version of boost
  • We won't make people install the dependency
  • Easier install

Cons:

  • Compile time

I realise I might be lighting a fire now. Any thoughs?

zalox avatar Apr 04 '16 09:04 zalox

I don't see how having Boost as a dependency is a problem for juCi++. I somehow understand anti-Boost sentiments (that means, I respect them, not that I agree with them) if you have a library with a Boost dependency, because of many problems, mentioned in the reddit thread, but none of these apply to user-facing programs, which juCi++ is.

Also, let's not forget that juCi++ has dependency on Boost libraries which require separate compilation (e.g. Filesystem), so including several boost headers into the project solves nothing.

milleniumbug avatar Apr 04 '16 09:04 milleniumbug

I agree with @milleniumbug . As long as we are using good, mature and modern libraries, dependencies should not be an issue.

We will hopefully soon have a stable MSYS2 package for instance (I was requested to do this, and will create it after the v1.1.2 release), that will be installable through pacman -S jucipp, and maybe other distributions will add juCi++ too:)

eidheim avatar Apr 04 '16 18:04 eidheim

@zalox Can we remove logger.h? Then both the boost-thread and boost-log dependencies are no longer needed. I never use the logger for debugging anyway, gdb/lldb is much better in my opinion.

eidheim avatar Apr 29 '16 08:04 eidheim

Yes!

zalox avatar Apr 29 '16 08:04 zalox

Splendid:) Working on this now.

eidheim avatar Apr 29 '16 08:04 eidheim