Thanks, I wasn't aware about these blog posts. I have just read a little
bit of gcc documentation and the `-flto` flag has to be provided also in
the compile steps, doing this
PKG_CPPFLAGS=-I"../inst/include" -flto
PKG_LIBS=-lstdc++fs -flto
reduces the size of the final `.so` to under 1Mb, but gives a warning in
`R CMD check --as-cran` because `-flto` doesn't seem to be portable.
Cheers,
Guido
On 12/11/19 2:15 PM, Iñaki Ucar wrote:
On Wed, 11 Dec 2019 at 14:07, Guido Kraemer <gkrae...@bgc-jena.mpg.de> wrote:
I am building an R package (https://github.com/gdkrmr/zarr-R) that wraps
a couple of C++ headers and the resulting shared object is huge (>20Mb,
see https://travis-ci.org/gdkrmr/zarr-R). I have tried to set the
following in `./src/Makevars`:
PKG_CPPFLAGS=-I"../inst/include" -ffunction-sections -fdata-sections
PKG_LIBS=-lstdc++fs -flto -Wl,--gc-sections
but this does not reduce the size of the shared object and produces some
warnings in `R CMD check` due to portability issues. Is there a way to
reduce the size of the shared object or do I just have to live with it?
Hi, see Dirk's http://dirk.eddelbuettel.com/blog/2019/03/27/ and
related posts (linked in the first paragraph).
Iñaki
--
Guido Kraemer
Max Planck Institute for Biogeochemistry Jena
Department for Biogeochemical Integration
Hans-Knöll-Str. 10
07745 Jena
Germany
phone: +49 3641 576293
e-mail: gkrae...@bgc-jena.mpg.de
______________________________________________
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel