gdsfmt icon indicating copy to clipboard operation
gdsfmt copied to clipboard

INSTALL fails on F34 with R 4.1.0

Open rsbivand opened this issue 3 years ago • 7 comments

The package fails to install on Fedora 34 with gcc/g++ 11.1.1 and R 4.1.0. Attached check log and zipped install outfile: 00check.log 00install.zip I do not use or need the package, but it is used by a package that I check regularly in a reverse dependency chain (I haven't identified which). I simply did BiocManager::install(version="3.13", force=TRUE), and gdsfmt was the only failure. I wonder whether bundling libraries is such a good idea when a simple configure.ac might find installed copies that probably worked.

rsbivand avatar May 18 '21 18:05 rsbivand

The error is:

/usr/bin/ld: final link failed: memory exhausted

I am afraid that no much I can help.

zhengxwen avatar May 18 '21 19:05 zhengxwen

@zhengxwen : No it is not a memory exhaustion failure. On a PC with 16GB, memory usage never passed 4GB running R CMD check with only system processes running other than the R check processes. I suspect this is the first sign of issues with gcc 11.1.1 with the new use of -std=gnu++14 in R 4.1.0. Run up a docker container with R 4.1 and Fedora 34, and see whether you maybe need to override something, or adapt to more modern compiler options. Not using configure to copy values into Makevars seems worrying. Do you know that all of the assignments in Makevars also work for CXX14?

rsbivand avatar May 19 '21 08:05 rsbivand

Fedora 33 has gcc 10.3.1 on another of my systems. For R 4.0.5, R CMD config CXX says g++ -std=gnu++11, while for R 4.1.0, it says g++ -std=gnu++14. With Fedora 34 having gcc 11.1.1, there are two important build train changes. I suspect that your unprotected ${CXX} in Makevars may be vulnerable. The package installs correctly with R 4.0.5 and gcc 10.3.1. It is clear that your package cannot be installed with gcc 11.1.1 and R 4.1.0.

rsbivand avatar May 19 '21 10:05 rsbivand

Negating -g in ~/.R/Makevars can avoid the problem /usr/bin/ld: final link failed: memory exhausted.

zhengxwen avatar Sep 13 '21 20:09 zhengxwen

Dear zhengxwen, I am having the same problem as described above. What do you mean by 'negating -g in ~/.R/Makevars'? Thanks a lot, Tomas

tomas-fer avatar Sep 15 '21 18:09 tomas-fer

gdsfmt_1.29.1 (devel) and gdsfmt_1.28.1 (release) could avoid the problem /usr/bin/ld: final link failed: memory exhausted. Please install these versions if you are not sure 'negating -g'.

zhengxwen avatar Sep 15 '21 18:09 zhengxwen

Great, 1.28.1 works, thank you

tomas-fer avatar Sep 15 '21 20:09 tomas-fer