bdon / bdon/OSMExpress

Document how to build with system libs instead of vendored libs

Open
#20 7 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
272
Forks
22
PR merge metrics
No merged PRs in 30d

Description

I'm considering to package OSM Express for [NixOS](https://nixos.org) / [nixpkgs](https://github.com/NixOS/nixpkgs). As with many Linux distributions, the preferred way is to let applications use common copies of the libraries provided by the distribution, rather each bringing their own copies of those libraries.

It seems like, except for s2geometry, the [libraries required by OSM Express](https://github.com/protomaps/OSMExpress#details) are already in nixpkgs:

- [libosmium](https://nixos.org/nixos/packages.html?attr=libosmium&channel=nixpkgs-unstable)
- [LMDB](https://nixos.org/nixos/packages.html?attr=lmdb&channel=nixpkgs-unstable)
- [Cap’n Proto](https://nixos.org/nixos/packages.html?attr=capnproto&channel=nixpkgs-unstable)
- [CRoaring](https://nixos.org/nixos/packages.html?attr=croaring&channel=nixpkgs-unstable)

(When packaging OSM Express, I would also — separately — package s2geometry.)

However I'm unsure **how to tell the OSM Express build system to use the distribution-provided libraries** rather than the ones included in the source tree, and in the [instructions to build from source](https://protomaps.com/docs/osmexpress/programming-guide/) I didn't find anything about that, either. Ideally, this can be done by passing arguments to `cmake` instead of having to modify any files in the source tree.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.