microsoft / vcpkg

C++ Library Manager for Windows, Linux, and MacOS
MIT License
23.06k stars 6.36k forks source link

apt repository generator #41194

Open ohhmm opened 3 weeks ago

ohhmm commented 3 weeks ago

Is your feature request related to a problem? Please describe.

Vcpkg deep extensive dependencies scares somehow developers from binding 51 dependency to bind boost::program_options.

Proposed solution

Adding equivalent apt repo (for Ubuntu) would allow seamless tight choices between system and produced dependencies. Vcpkg seem to have everything ready to produce a package repository. Please, consider adding apt repository generator vcpkg new feature.

Describe alternatives you've considered

Tried convincing that 51 dependencies is not a problem for vcpkg.

Additional context

vcpkg export apt <path> [--options...]

FrankXie05 commented 3 weeks ago

cc @JavierMatosD @BillyONeal

BillyONeal commented 3 weeks ago

Note that export produces a single package containing an entire installed tree, so it still wouldn't allow "seamless tight choices between system and produced dependencies". Moreover, most dependencies in the world aren't ABI compatible, so trying to replace some of them with system ones will explode at runtime.

ohhmm commented 3 days ago

That is right @BillyONeal, and this is why it is unusable for APT-based distros in space-efficient manner. This is why I suggest to generate DEB/RPM per each vcpkg dependency semi-automatically.