Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

tcltk package failure with Bioconductor #1863

Closed
verdurin opened this issue Aug 14, 2015 · 45 comments
Closed

tcltk package failure with Bioconductor #1863

verdurin opened this issue Aug 14, 2015 · 45 comments
Milestone

Comments

@verdurin
Copy link
Member

I'm trying to install R-bundle-Bioconductor-3.1-goolf-1.7.20-R-3.2.0.eb on EB 2.2.0.

The build is failing because it is unable to find the 'tcltk' package:

== 2015-08-14 09:43:56,016 main.Bundle DEBUG Installing extension widgetTools with default class RPackage (from easybuild.easyblocks.generic.rpackage)
== 2015-08-14 09:43:56,017 main.Bundle DEBUG Installing R package widgetTools version 1.46.0.
== 2015-08-14 09:43:56,017 main.Bundle DEBUG make_cmdline_cmd returns R CMD INSTALL /home/operations/.local/easybuild/sources/r/R-bundle-Bioconductor/extensions/widgetTools_1.46.0.tar.gz   --library=/srv/data/sw/eb/software/R-bundle-Bioconductor/3.1-goolf-1.7.20-R-3.2.0 --no-clean-on-error
== 2015-08-14 09:43:56,017 main.run DEBUG run_cmd: running cmd R CMD INSTALL /home/operations/.local/easybuild/sources/r/R-bundle-Bioconductor/extensions/widgetTools_1.46.0.tar.gz   --library=/srv/data/sw/eb/software/R-bundle-Bioconductor/3.1-goolf-1.7.20-R-3.2.0 --no-clean-on-error (in /home/operations/src/github/easybuild-easyconfigs)
== 2015-08-14 09:43:56,296 main.run DEBUG cmd "R CMD INSTALL /home/operations/.local/easybuild/sources/r/R-bundle-Bioconductor/extensions/widgetTools_1.46.0.tar.gz   --library=/srv/data/sw/eb/software/R-bundle-Bioconductor/3.1-goolf-1.7.20-R-3.2.0 --no-clean-on-error" exited with exitcode 1 and output:
* installing *source* package 'widgetTools' ...
** R
** inst
** preparing package for lazy loading
Warning: S3 methods 'as.character.tclObj', 'as.character.tclVar', 'as.double.tclObj', 'as.integer.tclObj', 'as.logical.tclObj', 'as.raw.tclObj', 'print.tclObj', '[[.tclArray', '[[<-.tclArray', '$.tclArray', '$<-.tclArray', 'names.tclArray', 'names<-.tclArray', 'length.tclArray', 'length<-.tclArray', 'tclObj.tclVar', 'tclObj<-.tclVar', 'tclvalue.default', 'tclvalue.tclObj', 'tclvalue.tclVar', 'tclvalue<-.default', 'tclvalue<-.tclVar', 'close.tkProgressBar' were declared in NAMESPACE but not found
Error : .onLoad failed in loadNamespace() for 'tcltk', details:
  call: fun(libname, pkgname)
  error: Tcl/Tk support is not available on this system
Error : package 'tcltk' could not be loaded
ERROR: lazy loading failed for package 'widgetTools'

== 2015-08-14 09:43:56,331 main ERROR cmd "R CMD INSTALL /home/operations/.local/easybuild/sources/r/R-bundle-Bioconductor/extensions/widgetTools_1.46.0.tar.gz   --library=/srv/data/sw/eb/software/R-bundle-Bioconductor/3.1-goolf-1.7.20-R-3.2.0 --no-clean-on-error" exited with exitcode 1 and output:
* installing *source* package 'widgetTools' ...
** R
** inst
** preparing package for lazy loading
Warning: S3 methods 'as.character.tclObj', 'as.character.tclVar', 'as.double.tclObj', 'as.integer.tclObj', 'as.logical.tclObj', 'as.raw.tclObj', 'print.tclObj', '[[.tclArray', '[[<-.tclArray', '$.tclArray', '$<-.tclArray', 'names.tclArray', 'names<-.tclArray', 'length.tclArray', 'length<-.tclArray', 'tclObj.tclVar', 'tclObj<-.tclVar', 'tclvalue.default', 'tclvalue.tclObj', 'tclvalue.tclVar', 'tclvalue<-.default', 'tclvalue<-.tclVar', 'close.tkProgressBar' were declared in NAMESPACE but not found
Error : .onLoad failed in loadNamespace() for 'tcltk', details:
  call: fun(libname, pkgname)
  error: Tcl/Tk support is not available on this system
Error : package 'tcltk' could not be loaded
ERROR: lazy loading failed for package 'widgetTools'
 (at easybuild/tools/run.py:360 in parse_cmd_output)
== 2015-08-14 09:43:56,332 main.easyblock WARNING build failed (first 300 chars): cmd "R CMD INSTALL /home/operations/.local/easybuild/sources/r/R-bundle-Bioconductor/extensions/widgetTools_1.46.0.tar.gz   --library=/srv/data/sw/eb/software/R-bundle-Bioconductor/3.1-goolf-1.7.20-R-3.2.0 --no-clean-on-error" exited with exitcode 1 and output:
* installing *source* package 'widgetT
== 2015-08-14 09:43:56,332 main.Bundle INFO Closing log for application name R-bundle-Bioconductor version 3.1
@verdurin
Copy link
Member Author

There may have been a problem with the initial R build:

[operations@snap-boot-test-2 easybuild-easyconfigs]$ R

R version 3.2.0 (2015-04-16) -- "Full of Ingredients"
Copyright (C) 2015 The R Foundation for Statistical Computing
Platform: x86_64-unknown-linux-gnu (64-bit)

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> library("tcltk")
Error : .onLoad failed in loadNamespace() for 'tcltk', details:
  call: fun(libname, pkgname)
  error: Tcl/Tk support is not available on this system
In addition: Warning message:
S3 methods 'as.character.tclObj', 'as.character.tclVar', 'as.double.tclObj', 'as.integer.tclObj', 'as.logical.tclObj', 'as.raw.tclObj', 'print.tclObj', '[[.tclArray', '[[<-.tclArray', '$.tclArray', '$<-.tclArray', 'names.tclArray', 'names<-.tclArray', 'length.tclArray', 'length<-.tclArray', 'tclObj.tclVar', 'tclObj<-.tclVar', 'tclvalue.default', 'tclvalue.tclObj', 'tclvalue.tclVar', 'tclvalue<-.default', 'tclvalue<-.tclVar', 'close.tkProgressBar' were declared in NAMESPACE but not found
Error: package or namespace load failed for 'tcltk'
> capabilities("tcltk")
tcltk
FALSE

@verdurin
Copy link
Member Author

These are the only available build logs for the tcltk package:

make[3]: Entering directory `/home/operations/.local/easybuild/build/R/3.2.0/goolf-1.7.20/R-3.2.0/src/library/tcltk'
building package 'tcltk'
mkdir -p -- ../../../library/tcltk/R
make[4]: Entering directory `/home/operations/.local/easybuild/build/R/3.2.0/goolf-1.7.20/R-3.2.0/src/library/tcltk'
mkdir -p -- ../../../library/tcltk/exec
make[4]: Leaving directory `/home/operations/.local/easybuild/build/R/3.2.0/goolf-1.7.20/R-3.2.0/src/library/tcltk'
make[3]: Leaving directory `/home/operations/.local/easybuild/build/R/3.2.0/goolf-1.7.20/R-3.2.0/src/library/tcltk'

@boegel
Copy link
Member

boegel commented Aug 14, 2015

This is what I have in the log for the same R installation (same version/toolchain).

Seems like you're missing tcltk.so, not sure why it's not getting built...

building package 'tcltk'
mkdir -p -- ../../../library/tcltk/R
make[4]: Entering directory `/tmp/vsc40023/easybuild_build/R/3.2.0/goolf-1.7.20/R-3.2.0/src/library/tcltk'
mkdir -p -- ../../../library/tcltk/exec
make[4]: Leaving directory `/tmp/vsc40023/easybuild_build/R/3.2.0/goolf-1.7.20/R-3.2.0/src/library/tcltk'
make[4]: Entering directory `/tmp/vsc40023/easybuild_build/R/3.2.0/goolf-1.7.20/R-3.2.0/src/library/tcltk/src'
gcc -std=gnu99 -I../../../../include -DNDEBUG -I/usr/include -I/usr/include -I../../../include -I../../../../src/include -DHAVE_CONFIG_H -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/OpenBLAS/0.2.13-GCC-4.8.4-LAPACK-3.5.0/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/ScaLAPACK/2.0.2-gompi-1.7.20-OpenBLAS-0.2.13-LAPACK-3.5.0/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/FFTW/3.3.4-gompi-1.7.20/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/libreadline/6.3-goolf-1.7.20/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/ncurses/5.9-goolf-1.7.20/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/libpng/1.6.17-goolf-1.7.20/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/libjpeg-turbo/1.4.0-goolf-1.7.20/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/Java/1.7.0_80/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/Tcl/8.6.4-goolf-1.7.20/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/Tk/8.6.4-goolf-1.7.20-no-X11/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/cURL/7.43.0-goolf-1.7.20/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/libxml2/2.9.2-goolf-1.7.20/include    -fpic  -O2 -march=native  -c init.c -o init.o
gcc -std=gnu99 -I../../../../include -DNDEBUG -I/usr/include -I/usr/include -I../../../include -I../../../../src/include -DHAVE_CONFIG_H -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/OpenBLAS/0.2.13-GCC-4.8.4-LAPACK-3.5.0/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/ScaLAPACK/2.0.2-gompi-1.7.20-OpenBLAS-0.2.13-LAPACK-3.5.0/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/FFTW/3.3.4-gompi-1.7.20/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/libreadline/6.3-goolf-1.7.20/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/ncurses/5.9-goolf-1.7.20/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/libpng/1.6.17-goolf-1.7.20/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/libjpeg-turbo/1.4.0-goolf-1.7.20/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/Java/1.7.0_80/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/Tcl/8.6.4-goolf-1.7.20/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/Tk/8.6.4-goolf-1.7.20-no-X11/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/cURL/7.43.0-goolf-1.7.20/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/libxml2/2.9.2-goolf-1.7.20/include    -fpic  -O2 -march=native  -c tcltk.c -o tcltk.o
gcc -std=gnu99 -I../../../../include -DNDEBUG -I/usr/include -I/usr/include -I../../../include -I../../../../src/include -DHAVE_CONFIG_H -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/OpenBLAS/0.2.13-GCC-4.8.4-LAPACK-3.5.0/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/ScaLAPACK/2.0.2-gompi-1.7.20-OpenBLAS-0.2.13-LAPACK-3.5.0/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/FFTW/3.3.4-gompi-1.7.20/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/libreadline/6.3-goolf-1.7.20/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/ncurses/5.9-goolf-1.7.20/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/libpng/1.6.17-goolf-1.7.20/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/libjpeg-turbo/1.4.0-goolf-1.7.20/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/Java/1.7.0_80/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/Tcl/8.6.4-goolf-1.7.20/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/Tk/8.6.4-goolf-1.7.20-no-X11/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/cURL/7.43.0-goolf-1.7.20/include -I/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/libxml2/2.9.2-goolf-1.7.20/include    -fpic  -O2 -march=native  -c tcltk_unix.c -o tcltk_unix.o
making init.d from init.c
making tcltk.d from tcltk.c
making tcltk_unix.d from tcltk_unix.c
gcc -std=gnu99 -shared -L../../../../lib -L/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/GCC/4.8.4/lib64 -L/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/GCC/4.8.4/lib -L/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/OpenBLAS/0.2.13-GCC-4.8.4-LAPACK-3.5.0/lib -L/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/ScaLAPACK/2.0.2-gompi-1.7.20-OpenBLAS-0.2.13-LAPACK-3.5.0/lib -L/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/FFTW/3.3.4-gompi-1.7.20/lib -L/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/libreadline/6.3-goolf-1.7.20/lib -L/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/ncurses/5.9-goolf-1.7.20/lib -L/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/libpng/1.6.17-goolf-1.7.20/lib -L/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/libjpeg-turbo/1.4.0-goolf-1.7.20/lib -L/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/Java/1.7.0_80/lib -L/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/Tcl/8.6.4-goolf-1.7.20/lib -L/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/Tk/8.6.4-goolf-1.7.20-no-X11/lib -L/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/cURL/7.43.0-goolf-1.7.20/lib -L/user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/SL6/sandybridge/software/libxml2/2.9.2-goolf-1.7.20/lib -o tcltk.so init.o tcltk.o tcltk_unix.o -L/usr/lib64 -ltcl8.5 -L/usr/lib64 -ltk8.5 -lX11 -lm -L../../../../lib -lR
make[5]: Entering directory `/tmp/vsc40023/easybuild_build/R/3.2.0/goolf-1.7.20/R-3.2.0/src/library/tcltk/src'
mkdir -p -- ../../../../library/tcltk/libs
make[5]: Leaving directory `/tmp/vsc40023/easybuild_build/R/3.2.0/goolf-1.7.20/R-3.2.0/src/library/tcltk/src'
make[4]: Leaving directory `/tmp/vsc40023/easybuild_build/R/3.2.0/goolf-1.7.20/R-3.2.0/src/library/tcltk/src'
make[4]: Entering directory `/tmp/vsc40023/easybuild_build/R/3.2.0/goolf-1.7.20/R-3.2.0/src/library/tcltk'
byte-compiling package 'tcltk'

@boegel
Copy link
Member

boegel commented Aug 14, 2015

@verdurin: let us know whether installing both X11 headers and libs resolved this issue... I'd love to get a good view on this.

@verdurin
Copy link
Member Author

I've tried a complete rebuild but with the same result. However, I suspect local misconfiguration may be in part to blame, so I've tried to fix that and will now rebuild everything again.

@verdurin
Copy link
Member Author

Still the same problem after a complete rebuild, with fixed local configuration. The R build doesn't include the tcltk capability.

@boegel
Copy link
Member

boegel commented Aug 17, 2015

@verdurin: do you have more details about OS, etc.? Can you share the full R debug log with me (bzipped via mail, or uploaded somewhere)?

@verdurin
Copy link
Member Author

This is all on a CentOS 7.1 instance, fully updated. I've just started another instance, on which I'm running the whole pipeline again and I'll put the log online for you.

@boegel
Copy link
Member

boegel commented Aug 17, 2015

OK, I have access to CentOS 7.1 too, I can see if I can reproduce the problem there.

@verdurin
Copy link
Member Author

I've just mailed you a link to the two log files - R and R-bundle-Bioconductor. Thanks again.

@boegel
Copy link
Member

boegel commented Aug 17, 2015

I can't reproduce this issue on CentOS 7.1:

-bash-4.2$ cat /etc/redhat-release 
CentOS Linux release 7.1.1503 (Core) 
-bash-4.2$ ls $EASYBUILD_PREFIX/software/R/3.2.0-goolf-1.7.20/lib64/R/library/tcltk/libs
tcltk.so

@verdurin
Copy link
Member Author

Hmmph. Can you send me the history of how you installed it, so I can try that? (in case I've done it wrong somehow)

@verdurin
Copy link
Member Author

All I have in the directory is a single file 'tcltk', with the contents:

.onLoad <- function(libname, pkgname)
stop("Tcl/Tk support is not available on this system", domain = "R-tcltk")

@boegel
Copy link
Member

boegel commented Aug 17, 2015

I didn't do anything special, just "eb R-bundle-Bioconductor-3.1-goolf-1.7.20-R-3.2.0.eb -dr".

I did use 2.3.0dev, but that shouldn't matter, nothing has changed that could affect the R installation, afaik (see https://github.com/hpcugent/easybuild-easyconfigs/commits/develop/easybuild/easyconfigs/r/R/R-3.2.0-goolf-1.7.20.eb and https://github.com/hpcugent/easybuild-easyblocks/commits/develop/easybuild/easyblocks/r/r.py)

@verdurin
Copy link
Member Author

Well, difficult to get that wrong. I wonder whether it's to do with system dependencies? What did you install on the system before invoking eb?

@boegel
Copy link
Member

boegel commented Aug 17, 2015

In yours logs, I find this at the end of the output of the configure command:

R is now configured for x86_64-unknown-linux-gnu

  Source directory:          .
  Installation directory:    /srv/data/sw/eb/software/R/3.2.0-goolf-1.7.20

  C compiler:                gcc -std=gnu99  -O2 -march=native
  Fortran 77 compiler:       gfortran  -O2 -march=native

  C++ compiler:              g++  -O2 -march=native
  C++ 11 compiler:           g++  -std=c++11 -O2 -march=native
  Fortran 90/95 compiler:    gfortran -g -O2
  Obj-C compiler:         

  Interfaces supported:      
  External libraries:        readline, BLAS(OpenBLAS), LAPACK(generic), zlib, PCRE, curl
  Additional capabilities:   PNG, JPEG, NLS
  Options enabled:           shared R library, R profiling

  Capabilities skipped:      TIFF, cairo, ICU
  Options not enabled:       shared BLAS, memory profiling

  Recommended packages:      no

configure: WARNING: you cannot build info or HTML versions of the R manuals
configure: WARNING: you cannot build PDF versions of the R manuals
configure: WARNING: you cannot build PDF versions of vignettes and help pages

In my logs, I have this (note mention of tcltk here):

R is now configured for x86_64-unknown-linux-gnu

  Source directory:          .
  Installation directory:    /user/scratch/gent/vsc400/vsc40023/easybuild_REGTEST/CO7/haswell-ib/software/R/3.2.0-goolf-1.7.20

  C compiler:                gcc -std=gnu99  -O2 -march=native
  Fortran 77 compiler:       gfortran  -O2 -march=native

  C++ compiler:              g++  -O2 -march=native
  C++ 11 compiler:           g++  -std=c++11 -O2 -march=native
  Fortran 90/95 compiler:    gfortran -g -O2
  Obj-C compiler:         

  Interfaces supported:      tcltk
  External libraries:        readline, BLAS(OpenBLAS), LAPACK(generic), zlib, bzlib, lzma, PCRE, curl
  Additional capabilities:   PNG, JPEG, NLS, cairo
  Options enabled:           shared R library, R profiling

  Capabilities skipped:      TIFF, ICU
  Options not enabled:       shared BLAS, memory profiling

  Recommended packages:      no

configure: WARNING: you cannot build info or HTML versions of the R manuals
configure: WARNING: neither inconsolata.sty nor zi4.sty found: PDF vignettes and package manuals will not be rendered optimally
configure: WARNING: I could not determine a browser
configure: WARNING: I could not determine a PDF viewer

So, you have some dependency that is required for tcltk missing in the OS. No clue which one though...

@boegel
Copy link
Member

boegel commented Aug 17, 2015

From https://support.bioconductor.org/p/43061/:

Required stuff:
 make
 libc6-dev
 gfortran
 gfortran-4.2
 g++
 g++-4.2
 libreadline5-dev
 libx11-dev
 libxt-dev

Other highly recommended stuff (TeX/LaTeX, tcltk, PNG, JPEG, cairo,
Java):
 texlive-full
 tcl8.5-dev
 tk8.5-dev
 libxss-dev
 libpng12-dev
 libjpeg62-dev
 libcairo2-dev
 gcj
 gcj-4.2

libpng and libjpeg are covered by EB itself via dependencies, and I don't have cairo or libxss (which is screensaver related) in the OS. I sure hope texlive is not to blame. ;-)

Do you have libXt stuff installed? And which libX11 packages are installed exactly?

@verdurin
Copy link
Member Author

I've just installed libXt, libXt-devel and will try rebuilding just R.

libX11 and libX11-devel are installed.

@verdurin
Copy link
Member Author

Okay, libXt wasn't sufficient on its own.

@verdurin
Copy link
Member Author

Right, I've installed tk-devel and tcl-devel and it looks as though it might work. The 'Interfaces' line in the configure output looks like yours. I'll let you know once it's finished...

@verdurin
Copy link
Member Author

Yes, trying that on two different instances, the 'Interfaces' line after ./configure looks better. One has a lot more memory and CPUs so will hopefully finish before I have to leave for the day. I'll check from home tonight, anyway.

@verdurin
Copy link
Member Author

Can't see a tcltk.so yet but the small 'tcltk' file looks better:

local({
    info <- loadingNamespaceInfo()
    pkg <- info$pkgname
    ns <- .getNamespace(as.name(pkg))
    if (is.null(ns))
        stop("cannot find namespace environment for ", pkg, domain = NA);
    dbbase <- file.path(info$libname, pkg, "R", pkg)
    lazyLoad(dbbase, ns, filter = function(n) n != ".__NAMESPACE__.")
})

@boegel
Copy link
Member

boegel commented Aug 17, 2015

OK, that basically means something is wrong or incomplete with the Tcl/Tk that are included as dependencies... Yikes.

@boegel boegel added this to the v2.2.1 milestone Aug 17, 2015
@verdurin
Copy link
Member Author

Can confirm that on both instances Bioconductor built successfully after installation of tk and tcl devel RPMs. It loads without any errors.

@boegel boegel modified the milestones: v2.4.0, v2.3.0 Aug 27, 2015
@verdurin
Copy link
Member Author

Just to confirm that with 2.3.0 I still had to install tk-devel and tcl-devel.

@boegel
Copy link
Member

boegel commented Sep 22, 2015

Yeah, we'll need to figure this out at some point...

@verdurin: can you check whether R needs to be told where Tcl/Tk are available, since they're installed in a non-standard prefix with EB?

@verdurin
Copy link
Member Author

@boegel: will do

@boegel boegel removed this from the v2.5.0 milestone Dec 14, 2015
@boegel boegel modified the milestones: v2.6.0, v2.7.0 Jan 23, 2016
@boegel
Copy link
Member

boegel commented Mar 11, 2016

@verdurin ping? Is this still an issue with #2102 in place?

@boegel boegel modified the milestones: v2.8.0, v2.7.0 Mar 11, 2016
@verdurin
Copy link
Member Author

Running a test build now, @boegel

@verdurin
Copy link
Member Author

Hmm, running the test in a Fedora 23 vagrant box, and saw this error with binutils:

configure:5978: result: no
configure:5998: checking for version 0.12 of ISL
configure:6017: gcc -o conftest -g -O2      conftest.c /home/vagrant/.local/easybuild/software/zlib/1.2.8/lib/libz.a -Wl,-rpath=/lib64 -Wl,-rpath=/usr/lib64 -Wl,-rpath=/lib -Wl,-rpath=/usr/lib -lisl >&5
conftest.c:10:25: fatal error: isl/version.h: No such file or directory
compilation terminated.
configure:6017: $? = 1
configure: program exited with status 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define LT_OBJDIR ".libs/"
| /* end confdefs.h.  */
| #include <isl/version.h>
|    #include <string.h>
| int
| main ()
| {
| if (strncmp (isl_version (), "isl-0.12", strlen ("isl-0.12")) != 0)
|      return 1;
|
|   ;
|   return 0;
| }

@verdurin
Copy link
Member Author

This is with R-bundle-Bioconductor-3.2-foss-2016a-R-3.2.3.eb

@boegel
Copy link
Member

boegel commented Mar 12, 2016

@verdurin: this is when installing GCC?

@wpoely86: any idea?

@verdurin
Copy link
Member Author

It's a brand new Vagrant box so there's nothing on there. This is with binutils, specifically:

== processing EasyBuild easyconfig /home/vagrant/EasyBuild-Whl34Y/easybuild-easyconfigs/easybuild/easyconfigs/b/binutils/binutils-2.25.eb
== building and installing binutils/2.25...
== fetching files...
== creating build dir, resetting environment...
== unpacking...
== patching...
== preparing...
== configuring...
== building...
== FAILED: Installation ended unsuccessfully (build directory: /home/vagrant/.local/easybuild/build/binutils/2.25/dummy-): build failed (first 300 chars): cmd "LIBS="$EBROOTZLIB/lib/libz.a -Wl,-rpath=/lib64 -Wl,-rpath=/usr/lib64 -Wl,-rpath=/lib -Wl,-rpath=/usr/lib"
 make -j 2 " exited with exitcode 2 and output:
make[1]: Entering directory '/home/vagrant/.local/easybuild/build/binutils/2.25/dummy-/binutils-2.25'
Configuring in ./intl
Configuring in ./l
== Results of the build can be found in the log file /tmp/eb-mfiV6D/easybuild-binutils-2.25-20160312.103706.TeBrY.log
ERROR: Build of /home/vagrant/EasyBuild-Whl34Y/easybuild-easyconfigs/easybuild/easyconfigs/b/binutils/binutils-2.25.eb failed (err: 'build failed (first 300 chars): cmd "LIBS="$EBROOTZLIB/lib/libz.a -Wl,-rpath=/lib64 -Wl,-rpath=/usr/lib64 -Wl,-rpath=/lib -Wl,-rpath
=/usr/lib" make -j 2 " exited with exitcode 2 and output:\nmake[1]: Entering directory \'/home/vagrant/.local/easybuild/build/binutils/2.25/dummy-/binutils-2.25\'\nConfiguring in ./intl\nConfiguring in ./l')

@boegel
Copy link
Member

boegel commented Mar 12, 2016

fixed with #2681?

@verdurin
Copy link
Member Author

No, that's already in the tree I'm using, which is a brand new develop as of this morning.

@boegel
Copy link
Member

boegel commented Mar 14, 2016

@verdurin Then I'll need more details, can you share a full debug log on the binutils install issue?

@verdurin
Copy link
Member Author

@boegel - trying to reproduce now. I suspect it's a change in the Fedora RPM groups.

@verdurin
Copy link
Member Author

Okay, the ISL error has gone, but the X11 error is still there:

== 2016-03-13 09:12:36,399 templates.py:173 DEBUG version found in easyconfig is 8.6.4
== 2016-03-13 09:12:36,399 templates.py:210 DEBUG name: name, config: Tk
== 2016-03-13 09:12:36,399 templates.py:210 DEBUG name: version, config: 8.6.4
== 2016-03-13 09:12:36,399 templates.py:210 DEBUG name: versionsuffix, config: -no-X11
== 2016-03-13 09:12:36,400 templates.py:210 DEBUG name: versionprefix, config:
== 2016-03-13 09:12:36,400 easyblock.py:2067 INFO Running method build_step part of step build
== 2016-03-13 09:12:36,400 run.py:99 DEBUG run_cmd: running cmd  make -j 2  (in /home/vagrant/.local/easybuild/build/Tk/8.6.4/foss-2016a-no-X11/tk8.6.4/unix)
== 2016-03-13 09:12:36,443 run.py:392 DEBUG cmd " make -j 2 " exited with exitcode 2 and output:
gcc -c -O2 -I/home/vagrant/.local/easybuild/software/Tcl/8.6.4-foss-2016a/include -pipe -I/home/vagrant/.local/easybuild/software/OpenBLAS/0.2.15-GCC-4.9.3-2.25-LAPACK-3.6.0/include -I/home/vagrant/.local/easybuild/software/ScaLAPACK/2.0.2-gompi-2016a-OpenBLAS-0.2.15-LAPACK-3.6.0/include -I/home/vagrant/.local/easybuild/software/FFTW/3.3.4-gompi-2016a/include -I/home/vagrant/.local/easybuild/software/Tcl/8.6.4-foss-2016a/include -Wall -fPIC -DBUILD_tk -I/home/vagrant/.local/easybuild/build/Tk/8.6.4/foss-2016a-no-X11/tk8.6.4/unix/../unix -I/home/vagrant/.local/easybuild/build/Tk/8.6.4/foss-2016a-no-X11/tk8.6.4/unix/../generic -I/home/vagrant/.local/easybuild/build/Tk/8.6.4/foss-2016a-no-X11/tk8.6.4/unix/../bitmaps -I/home/vagrant/.local/easybuild/build/Tcl/8.6.4/foss-2016a/tcl8.6.4/generic -I/home/vagrant/.local/easybuild/build/Tcl/8.6.4/foss-2016a/tcl8.6.4/unix  -DPACKAGE_NAME=\"tk\" -DPACKAGE_TARNAME=\"tk\" -DPACKAGE_VERSION=\"8.6\" -DPACKAGE_STRING=\"tk\ 8.6\" -DPACKAGE_BUGREPORT=\"\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_LIMITS_H=1 -DUSE_THREAD_ALLOC=1 -D_REENTRANT=1 -D_THREAD_SAFE=1 -DHAVE_PTHREAD_ATTR_SETSTACKSIZE=1 -DHAVE_PTHREAD_ATFORK=1 -DTCL_THREADS=1 -DMODULE_SCOPE=extern\ __attribute__\(\(__visibility__\(\"hidden\"\)\)\) -DHAVE_HIDDEN=1 -DHAVE_CAST_TO_UNION=1 -DTCL_SHLIB_EXT=\".so\" -DNDEBUG=1 -DTCL_CFG_OPTIMIZED=1 -D_LARGEFILE64_SOURCE=1 -DTCL_WIDE_INT_IS_LONG=1 -DHAVE_SYS_TIME_H=1 -DTIME_WITH_SYS_TIME=1 -DHAVE_INTPTR_T=1 -DHAVE_UINTPTR_T=1 -DHAVE_PW_GECOS=1 -DXKEYCODETOKEYSYM_IS_DEPRECATED=1      -DTCL_NO_DEPRECATED  -DUSE_TCL_STUBS /home/vagrant/.local/easybuild/build/Tk/8.6.4/foss-2016a-no-X11/tk8.6.4/unix/../generic/tkStubLib.cgcc -c -O2 -I/home/vagrant/.local/easybuild/software/Tcl/8.6.4-foss-2016a/include -pipe -I/home/vagrant/.local/easybuild/software/OpenBLAS/0.2.15-GCC-4.9.3-2.25-LAPACK-3.6.0/include -I/home/vagrant/.local/easybuild/software/ScaLAPACK/2.0.2-gompi-2016a-OpenBLAS-0.2.15-LAPACK-3.6.0/include -I/home/vagrant/.local/easybuild/software/FFTW/3.3.4-gompi-2016a/include -I/home/vagrant/.local/easybuild/software/Tcl/8.6.4-foss-2016a/include -Wall -fPIC -DBUILD_tk -I/home/vagrant/.local/easybuild/build/Tk/8.6.4/foss-2016a-no-X11/tk8.6.4/unix/../unix -I/home/vagrant/.local/easybuild/build/Tk/8.6.4/foss-2016a-no-X11/tk8.6.4/unix/../generic -I/home/vagrant/.local/easybuild/build/Tk/8.6.4/foss-2016a-no-X11/tk8.6.4/unix/../bitmaps -I/home/vagrant/.local/easybuild/build/Tcl/8.6.4/foss-2016a/tcl8.6.4/generic -I/home/vagrant/.local/easybuild/build/Tcl/8.6.4/foss-2016a/tcl8.6.4/unix  -DPACKAGE_NAME=\"tk\" -DPACKAGE_TARNAME=\"tk\" -DPACKAGE_VERSION=\"8.6\" -DPACKAGE_STRING=\"tk\ 8.6\" -DPACKAGE_BUGREPORT=\"\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_LIMITS_H=1 -DUSE_THREAD_ALLOC=1 -D_REENTRANT=1 -D_THREAD_SAFE=1 -DHAVE_PTHREAD_ATTR_SETSTACKSIZE=1 -DHAVE_PTHREAD_ATFORK=1 -DTCL_THREADS=1 -DMODULE_SCOPE=extern\ __attribute__\(\(__visibility__\(\"hidden\"\)\)\) -DHAVE_HIDDEN=1 -DHAVE_CAST_TO_UNION=1 -DTCL_SHLIB_EXT=\".so\" -DNDEBUG=1 -DTCL_CFG_OPTIMIZED=1 -D_LARGEFILE64_SOURCE=1 -DTCL_WIDE_INT_IS_LONG=1 -DHAVE_SYS_TIME_H=1 -DTIME_WITH_SYS_TIME=1 -DHAVE_INTPTR_T=1 -DHAVE_UINTPTR_T=1 -DHAVE_PW_GECOS=1 -DXKEYCODETOKEYSYM_IS_DEPRECATED=1      -DTCL_NO_DEPRECATED  -DUSE_TCL_STUBS /home/vagrant/.local/easybuild/build/Tk/8.6.4/foss-2016a-no-X11/tk8.6.4/unix/../generic/ttk/ttkStubLib.c
In file included from /home/vagrant/.local/easybuild/build/Tk/8.6.4/foss-2016a-no-X11/tk8.6.4/unix/../generic/tkPort.h:21:0,
                 from /home/vagrant/.local/easybuild/build/Tk/8.6.4/foss-2016a-no-X11/tk8.6.4/unix/../generic/tkInt.h:19,
                 from /home/vagrant/.local/easybuild/build/Tk/8.6.4/foss-2016a-no-X11/tk8.6.4/unix/../generic/tkStubLib.c:14:
/home/vagrant/.local/easybuild/build/Tk/8.6.4/foss-2016a-no-X11/tk8.6.4/unix/../generic/tk.h:96:25: fatal error: X11/Xlib.h: No such file or directory
 #   include <X11/Xlib.h>
                         ^
compilation terminated.
In file included from /home/vagrant/.local/easybuild/build/Tk/8.6.4/foss-2016a-no-X11/tk8.6.4/unix/../generic/ttk/ttkStubLib.c:9:0:
/home/vagrant/.local/easybuild/build/Tk/8.6.4/foss-2016a-no-X11/tk8.6.4/unix/../generic/tk.h:96:25: fatal error: X11/Xlib.h: No such file or directory
 #   include <X11/Xlib.h>
                         ^
compilation terminated.
Makefile:1165: recipe for target 'tkStubLib.o' failed
make: *** [tkStubLib.o] Error 1
make: *** Waiting for unfinished jobs....
Makefile:1429: recipe for target 'ttkStubLib.o' failed
make: *** [ttkStubLib.o] Error 1

@verdurin
Copy link
Member Author

I haven't installed anything in this VM other than what was requested by EB.

@boegel
Copy link
Member

boegel commented Mar 15, 2016

Now a duplicate of #1845?

Also, how did you resolve the ISL issue? How is it related to RPM groups, since ISL is provided by EB itself when building GCC?

@boegel
Copy link
Member

boegel commented Mar 15, 2016

Also duplicate of #2261, which has more info.

@verdurin
Copy link
Member Author

On the latter point, I had installed the development-tools group, but now it appears you need c-development too. After doing that, the ISL error disappeared.

@verdurin
Copy link
Member Author

Happy to close this and #1845 in favour of #2261 if you prefer.

@boegel
Copy link
Member

boegel commented Sep 19, 2016

let's follow up in #2261

This may help though: easybuilders/easybuild-easyblocks#995

@boegel boegel closed this as completed Sep 19, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants