5 ms·
Conan – A package manager for C/C++
- simfoo 6y agoLove Conan, the team behind it at JFrog is nothing short of amazing. Just awesome people who love what they are doing. However I'd recommend against using the "legacy" CMake generator and instead go for the cmake_find_package generator. This way your CMake build avoids the hard dependency on Conan. See here for an example: https://old.reddit.com/r/cpp/comments/lm0qja/using_conan_with_cmake_and_boost/gntjgfj/ https://old.reddit.com/r/cpp/comments/lm0qja/using_conan_wit...
- whizzter 6y agoBut do they have the will and resources to do something "free" for the community? The shutdown of Bintray, JCenter,GoCenter,etc kinda shows imho that if something is their line of business they won't really support it unless it "wins", and even then they'll probably need to be gobbled up by a larger entity (NPM inc->Github/MS) that can just fund the service as an "ad cost". MS makes money from developers thinking Windows/Azure is cool enough and supporting them, so unless both of those becomes wildly unprofitable we should expect NPM,Nuget and vcpkg because they learned in the Ballmer era what losing trust means to the bottom line in the long run.
- W0lf 6y agoThis article is pure spam? Every link references back to another article and the whole description is a copy from the official documentation.
- Gaelan 6y agoAll of this user's submissions from that same website as well.
- thraneh 6y agoI have for some time considered adopting Conan, but I'm comparing to Conda (conda-forge, actually). One of the many benefits of using Conda is that I can rely on users easily being able to install a well-defined environment without requiring root access. How does Conan compare? Is it also a good choice for distributing packages to end-users, or is better tailored to developers and build systems?
- simfoo 6y agoIn my opinion using Conan to distribute your packages really only makes sense if - you are a very popular library, in which case you should be in the Conan Center repository - you are in a controlled environment (company) where you host your own repository and support users with their use of it In other cases you can still use it to manage your own dependencies but distribute your software via different means.
- SMFloris 6y agoWhere Conan doesn't really shine is crossplatform dependencies. For example, when a dependency requires to have been built with a specific toolchain. Thus, if your goal is write once and run everywhere you'll still have to build dependencies yourself.
- simfoo 6y agoWhen a dependency requires to be built with a certain toolchain, Conan can't do anything about it. At best it really only surfaces a problem that might be hidden if you were just be using pre-made builds.
- pjmlp 6y agoI rather use vcpkg, that doesn't depend on additional languages (installing Python to compile C++).
- asymptosis 6y agoWhat's the problem being solved? My dev machine already has a package manager for C, it's called ... a package manager.
- simfoo 6y agoC++ has way to many failure modes regarding linking and generally consuming libraries (ABI issues, build system agnosticity). Conan addresses those compatibility issues in a holistic way through package ids, which are basically hashes over anything relevant.
- s_gourichon 6y agoDo you mean dpkg/rpm/apt/yum/pacman/etc? These require root access and per-manager, and often in practice even per distribution version, specific instructions. Not meaning to bash them, I still like them, but the actual problem of ensuring stable interfaces is not solved. Conan and these and other package managers are only automata that provide value under the hypothesis of stable interfaces.