[R-pkg-devel] Optional library dependencies for compiled code

Iñaki Ucar |uc@r @end|ng |rom |edor@project@org
Wed Jan 29 17:39:38 CET 2020


On Wed, 29 Jan 2020 at 15:11, Guido Kraemer <gkraemer using bgc-jena.mpg.de> wrote:
>
> I am developing an R package that can make (optional, but strongly
> recommended) use of a number of external compression algorithms. What is
> the best strategy if I want to distribute this as an R package? Because
> the package is for reading large external data sets, the package will
> probably not be very useful without compression.
>
> - Make a hard dependency on all external libraries and make user
> manually disable it if they cannot install a library for some reason?
>
> - Make no dependency on external libraries and have the user compile it
> manually if they want compression?
>
> - Look for installed libraries and use only these? (If so: How would I
> do this during the installation of an R package?)
>
> - How does this work on Windows?
>
> The possible compressions are: blosc, zlib, bzip2, lz4, xz

You could take a look at the fst package [1], which bundles the zstd
library [2]. And that's probably everything you need. Or you may want
to directly use the fst package if your target is tabular data.

[1] https://cran.r-project.org/web/packages/fst/index.html
[2] https://github.com/facebook/zstd



More information about the R-package-devel mailing list