Honestly, I would argue that git submodule should count as a package manager. I simply list out the repos I want to pull in and update them as needed.
I can see the usability of this depending on the application though. My work is primarily in embedded; I only ever need to pull in a handful of small libraries.
Honestly, I would argue that git submodule should count as a package manager. I simply list out the repos I want to pull in and update them as needed.
I see your point, but I think that when developers refer to package managers, implicitly that means accessing standalone precompiled binaries that are ready to just be integrated into a project.
With git submodules, unless they are used to track standalone projects or even precompiled binaries, you still have to resolve their dependencies, which is the responsibility of a package manager and the main reason they are used.
I think that this article is missing the most obvious and perhaps most used package manager for C and C++ projects: Linux distro’s package repositories.
It should be stressed that package managers are a requirement for Windows and, to a far lesser degree, macOS. On any Linux distro, you’d just
apt install <dependency>-dev
and you’d be mostly set. It’s mainly Windows development that draws this need to install packages to be able to develop anything.No mention of nuget, the one built into Visual Studio?