linkcell 0.3.11

Periodic linked-cell cutoff pairs and k-nearest neighbour search
Documentation
# Use pkg-config

Meson and CMake both write `linkcell.pc` at install. Device-enabled
installs also write `linkcell-gpu.pc`.

## Prefix

After `meson install` or `cmake --install` into `$PREFIX`:

```
export PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig:$PREFIX/lib64/pkgconfig
pkg-config --exists --print-errors linkcell
pkg-config --modversion linkcell
pkg-config --cflags --libs linkcell
pkg-config --cflags --libs linkcell-gpu
```

On Debian multiarch the `.pc` may sit under
`$PREFIX/lib/x86_64-linux-gnu/pkgconfig`. Put that directory on
`PKG_CONFIG_PATH` instead.

CPU `--cflags` contains `-I$PREFIX/include`; GPU cflags also define
`LINKCELL_HAS_GPULITE`. The GPU query adds `-llinkcell_gpu` and the CPU
package. `pkg-config --static --libs linkcell` includes the private
Rust system libraries (`dl`, threads, and `m` where required).

## Compile

```
cc app.c $(pkg-config --cflags --libs linkcell) -o app
c++ -std=c++17 app.cpp $(pkg-config --cflags --libs linkcell) -o app
c++ -std=c++17 device.cpp $(pkg-config --cflags --libs linkcell-gpu) -o device
```

The GPU implementation is a static archive. Keep the object before
`--libs`; the `.pc` files carry the package and system link order.

## Check

`scripts/check-install.sh` in this repository checks CPU and GPU
metadata from Meson and CMake prefixes.