easybuilders / easybuild-easyconfigs

A collection of easyconfig files that describe which software to build using which build options with EasyBuild.
https://easybuild.io
GNU General Public License v2.0
371 stars 699 forks source link

R-4.1.0-foss-2021a.eb fails : can't find minpack.lm_1.2-1.tar.gz #15337

Open emyr666 opened 2 years ago

emyr666 commented 2 years ago

I am trying to build R-4.1.0-foss-2021a.eb but it fails with "Couldn't find file minpack.lm_1.2-1.tar.gz anywhere, and downloading it didn't work either..."

emyr666 commented 2 years ago

I found this issue...

https://github.com/easybuilders/easybuild/issues/409 which is related.

It looks like minpack is now at minpack.lm_1.2-2 so I changed the .eb file to modify the name of the minpack file appropriately and set the checksum to the result of sha256sum on that file. That seemed to work but am now getting a similiar error for tmvtnorm_1.4-10.tar.gz. I guess it will be a similar thing . the package is now updated. I'll apply the same 'trick' to see if I can get this working.

emyr666 commented 2 years ago

and the Matching CRAN package is also updated

emyr666 commented 2 years ago

that seemed to work although I had another unrelated issue with it looking for libfabric / ibverbs. This system doesn't use ibfiniband. I solved this using hooks as described in https://www.youtube.com/watch?v=WPdcqFInXKY

VictorGoitea commented 2 years ago

Thanks for your comments, I have also found the problem with minpack.lm and Matching in R-4.1.0-foss-2021b.eb. I also solve it updating the version and checksums. However, by any chance did you also have problems with the V8 extension afterwards? I am stuck at that level trying to figure out what's the problem there.

emyr666 commented 2 years ago

I didn't get an issue with V8. I am seeing another issue though. I am using easybuild on 2 different architectures. After the above modifications and the addition of the hooks file, I got it to work on our AMD Epyc compute nodes. I'm trying to build it on our login nodes which are VMs on older hardware and it fails. For some reason it has a dependency in the treen which brings in the SciPy bundle and this fails in a test. I have no idea why R should need to have the Scipy bundle as a dependency....I think i will have to do a very stripped down R .eb file that just installs Vanilla R with no extra modules.

tlangfor commented 2 years ago

@VictorGoitea I am also running into the V8 issue while trying to install R 4.2.0 with foss/2020b. It appears to compile successfully but when it tests if the package can be loaded from the temporary location I get the following error:

*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded from temporary location
Error: package or namespace load failed for V8 in dyn.load(file, DLLpath = DLLpath, ...):
 unable to load shared object '/vast/palmer/apps/avx.grace/software/R/4.2.0-foss-2020b/lib64/R/library/00LOCK-V8/00new/V8/libs/V8.so':
  /vast/palmer/apps/avx.grace/software/R/4.2.0-foss-2020b/lib64/R/library/00LOCK-V8/00new/V8/libs/V8.so: undefined symbol: _ZNK2v85Value8ToStringEv
Error: loading failed
Execution halted
ERROR: loading failed
 (at easybuild/tools/run.py:618 in parse_cmd_output)

Is this what you're seeing? I've tried various versions of nodejs and V8 v4.1 and v4.2, but it's the same error each time. I tried disabling or specifically enabling V8's new download static libv8, didn't seem to make any difference.

UPDATE: I removed the nodejs dependency and instead let V8 install it's own version of libv8. I removed the installopts and preinstallopts fields and let V8 do its own thing and that seemed to work. I'm now failing on a much later step, but this is progress!