GithubHelp home page GithubHelp logo

easybuilders / easybuild Goto Github PK

View Code? Open in Web Editor NEW
446.0 446.0 143.0 597.91 MB

EasyBuild - building software with ease

Home Page: http://easybuild.io

License: GNU General Public License v2.0

Python 28.66% Shell 71.34%
hacktoberfest hpc linux python scientific-software

easybuild's People

Contributors

akesandgren avatar andreas-h avatar bartoldeman avatar bedroge avatar bennet-umich avatar boegel avatar branfosj avatar caylo avatar cclauss avatar cfenoy avatar damianam avatar deniskristak avatar fgeorgatos avatar flamefire avatar fretn avatar geimer avatar gppezzi avatar jenstimmerman avatar jfgrimm avatar kelseymh avatar lexming avatar migueldiascosta avatar ocaisa avatar pescobar avatar rjeschmi avatar sebastianachilles avatar shahzebsiddiqui avatar vanzod avatar verdurin avatar wpoely86 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

easybuild's Issues

EasyBuild boostrapping does not work with SL 6.3 environment-modules package

Hello,

I'm trying to install EasyBuild follwoing the bootstrapping procedure (https://github.com/hpcugent/easybuild/wiki/Bootstrapping-EasyBuild) . As I'm the process of bootstrapping I can only provide my python version: Python 2.6.6.

I did install environment-modules package: environment-modules-3.2.7b-6.el6.x86_64 and did not configure anything:

MODULEPATH=/usr/share/Modules/modulefiles:/etc/modulefiles
LOADEDMODULES=
MODULESHOME=/usr/share/Modules

I followed the instructions and the install failed with:

== 2014-06-27 13:00:56,498 bootstrap_eb.filetools INFO Command modulecmd found at /usr/bin/modulecmd
== 2014-06-27 13:00:56,498 bootstrap_eb.EnvironmentModulesC INFO Full path for module command is /usr/bin/modulecmd, so using it
== 2014-06-27 13:00:56,525 bootstrap_eb.EnvironmentModulesC INFO Found version 3.2.7
== 2014-06-27 13:00:56,562 bootstrap_eb.EnvironmentModulesC ERROR EasyBuild crashed with an error (at easybuild/tools/modules.py:514 in run_module): ModuleCmd_Purge.c(114):ERROR:107: 'MODULEPATH' not set

The I didi install modules from source following https://github.com/hpcugent/easybuild/wiki/Installing-environment-modules-without-root-permissions and EasyBuild was installed.

From dependencies (https://github.com/hpcugent/easybuild/wiki/Dependencies) it is said that the rpm from SL is valid:

environment-modules, version >= 3.2.6
An rpm for this is available in the RHEL and SL repositories.

Am I missing any extra conf for the default SL package?

TIA,
Arnau

Intel itac 8.1.4.045 does not install with EB 1.11.0

The current itac easyblock does not use the new Intel licensing scheme defined in intelbase.

I modified itac.py easyblock to use the new licensing scheme and allow installation of itac 8.1.4.045.

import os

from easybuild.framework.easyconfig import CUSTOM
from distutils.version import LooseVersion
from easybuild.easyblocks.generic.intelbase import IntelBase, ACTIVATION_NAME_2012, LICENSE_FILE_NAME_2012, ACTIVATION_NAME, LICENSE_FILE_NAME

class EB_itac(IntelBase):
"""
Class that can be used to install itac
- tested with Intel Trace Analyzer and Collector 7.2.1.008
"""

@staticmethod
def extra_options():
    extra_vars = [('preferredmpi', ['impi3', "Preferred MPI type (default: 'impi3')", CUSTOM])]
    return IntelBase.extra_options(extra_vars)

def install_step(self):
    """
    Actual installation
    - create silent cfg file
    - execute command
    """

    silent_cfg_names_map = None

    if LooseVersion(self.version) < LooseVersion('8.1'):
        silent_cfg_names_map = {
            'activation_name': ACTIVATION_NAME_2012,
            'license_file_name': LICENSE_FILE_NAME_2012,
        }
    else:
        silent_cfg_names_map = {
            'activation_name': ACTIVATION_NAME,
            'license_file_name': LICENSE_FILE_NAME,
        }

    super(EB_itac, self).install_step(silent_cfg_names_map=silent_cfg_names_map)

Thanks,
Cormac.

missing and/or incomplete documentation regarding environment variables

It would be nice to have a documented mapping between the available options: command line, config and environment, and what their precedence is. For example a table mapping

--installpath | installpath | EASYBUILD_INSTALLPATH
? | set-gid-bit | EASYBUILD_SET_GID_BIT

Or at least an explanation of used convention: do dashes in the config options always equal underscores in the environment variables?

In addition, current install documentation on some pages mentions EASYBUILD_PREFIX and on other it refers to EASYBUILD_INSTALLPATH. It's a bit confusing, considering by default those seem to point to the same location: $HOME/.local/easybuild.

Thanks!

inconsistent behavior related to robot paths

Hello,

In my attempt to create a set of easyconfigs customized to my site, that would override the ones provided with easybuild, I have discovered a few inconsistencies in how easybuild behaves. Below are some simple examples, and I'd be happy to provide more details. (this is on easybuild 2.0.0)

case #1: attempting to implement custom OpenMPI-1.8.4-GCC-4.8.4.eb, which builds against InfiniPath-PSM rather than openibverbs. The file is placed in /apps/easybuild/ebfiles_repo-vbi/generic/OpenMPI/OpenMPI-1.8.4-GCC-4.8.4.eb and EASYBUILD_MODULE_NAMING_SCHEME=HierarchicalMNS is set.

dom@sfxlogin3:~> echo $EASYBUILD_ROBOT
/apps/easybuild/ebfiles_repo-vbi/generic:/apps/easybuild/ebfiles_repo-vbi/shadowfax-sandy_bridge:/apps/easybuild/ebfiles_repo/shadowfax-sandy_bridge

/apps/easybuild/ebfiles_repo-vbi/generic:/apps/easybuild/ebfiles_repo-vbi/shadowfax-sandy_bridge:/apps/easybuild/ebfiles_repo/shadowfax-sandy_bridge
dom@sfxlogin3:~> eb -S OpenMPI-1.8.4-GCC-4.8.4.eb
== temporary log file in case of crash /tmp/eb-j7eVPd/easybuild-AkNcq4.log
== Searching (case-insensitive) for 'OpenMPI-1.8.4-GCC-4.8.4.eb' in /apps/easybuild/ebfiles_repo-vbi/generic
== Searching (case-insensitive) for 'openmpi-1.8.4-gcc-4.8.4.eb' in /apps/easybuild/ebfiles_repo-vbi/shadowfax-sandy_bridge
== Searching (case-insensitive) for 'openmpi-1.8.4-gcc-4.8.4.eb' in /apps/easybuild/ebfiles_repo/shadowfax-sandy_bridge
== Searching (case-insensitive) for 'openmpi-1.8.4-gcc-4.8.4.eb' in /apps/easybuild/software/shadowfax-sandy_bridge/Core/EasyBuild/2.0.0/lib64/python2.6/site-packages/easybuild_easyconfigs-2.0.0-py2.6.egg/easybuild/easyconfigs
CFGS1=/apps/easybuild/ebfiles_repo-vbi/generic/OpenMPI
CFGS2=/apps/easybuild/ebfiles_repo/shadowfax-sandy_bridge/OpenMPI
CFGS3=/apps/easybuild/software/shadowfax-sandy_bridge/Core/EasyBuild/2.0.0/lib64/python2.6/site-packages/easybuild_easyconfigs-2.0.0-py2.6.egg/easybuild/easyconfigs/o/OpenMPI

  • $CFGS1/OpenMPI-1.8.4-GCC-4.8.4.eb
  • $CFGS2/OpenMPI-1.8.4-GCC-4.8.4.eb
  • $CFGS2/OpenMPI-1.8.4-GCC-4.8.4.eb.backup
  • $CFGS3/OpenMPI-1.8.4-GCC-4.8.4.eb
    == temporary log file /tmp/eb-j7eVPd/easybuild-AkNcq4.log has been removed.
    == temporary directory /tmp/eb-j7eVPd has been removed.

We see that the file I'm interested in shows up under CFGS1.

Now, when trying to build it with dry-run, we do not see that location listed anymore:

dom@sfxlogin3:~> eb OpenMPI-1.8.4-GCC-4.8.4.eb -Dr
== temporary log file in case of crash /tmp/eb-xTHykI/easybuild-CiI3qE.log
Dry run: printing build status of easyconfigs and dependencies
CFGS=/apps/easybuild/software/shadowfax-sandy_bridge/Core/EasyBuild/2.0.0/lib64/python2.6/site-packages/easybuild_easyconfigs-2.0.0-py2.6.egg/easybuild/easyconfigs

  • $CFGS/g/GCC/GCC-4.8.4.eb (module: Core | GCC/4.8.4)
  • $CFGS/m/M4/M4-1.4.17-GCC-4.8.4.eb (module: Compiler/GCC/4.8.4 | M4/1.4.17)
  • $CFGS/l/libtool/libtool-2.4.5-GCC-4.8.4.eb (module: Compiler/GCC/4.8.4 | libtool/2.4.5)
  • $CFGS/a/Autoconf/Autoconf-2.69-GCC-4.8.4.eb (module: Compiler/GCC/4.8.4 | Autoconf/2.69)
  • $CFGS/a/Automake/Automake-1.15-GCC-4.8.4.eb (module: Compiler/GCC/4.8.4 | Automake/1.15)
  • $CFGS/n/numactl/numactl-2.0.10-GCC-4.8.4.eb (module: Compiler/GCC/4.8.4 | numactl/2.0.10)
  • $CFGS/h/hwloc/hwloc-1.10.1-GCC-4.8.4.eb (module: Compiler/GCC/4.8.4 | hwloc/1.10.1)
  • $CFGS/o/OpenMPI/OpenMPI-1.8.4-GCC-4.8.4.eb (module: Compiler/GCC/4.8.4 | OpenMPI/1.8.4)
    == temporary log file /tmp/eb-xTHykI/easybuild-CiI3qE.log has been removed.
    == temporary directory /tmp/eb-xTHykI has been removed.

Trying to build it without dry-run, actually shows it trying to pull from the custom location:

dom@sfxlogin3:~> eb OpenMPI-1.8.4-GCC-4.8.4.eb -f
== temporary log file in case of crash /tmp/eb-ouQ1vx/easybuild-FIWOJA.log
== resolving dependencies ...
== processing EasyBuild easyconfig /apps/easybuild/ebfiles_repo-vbi/generic/OpenMPI/OpenMPI-1.8.4-GCC-4.8.4.eb
== building and installing Compiler/GCC/4.8.4/OpenMPI/1.8.4...
== fetching files...

Trying now the same thing but with --robot option enabled, shows trying to pull from a different location, despite all dependencies already met:

dom@sfxlogin3:~> eb OpenMPI-1.8.4-GCC-4.8.4.eb -f --robot
== temporary log file in case of crash /tmp/eb-0GBzsY/easybuild-PGVw_H.log
== resolving dependencies ...
== processing EasyBuild easyconfig /apps/easybuild/software/shadowfax-sandy_bridge/Core/EasyBuild/2.0.0/lib64/python2.6/site-packages/easybuild_easyconfigs-2.0.0-py2.6.egg/easybuild/easyconfigs/o/OpenMPI/OpenMPI-1.8.4-GCC-4.8.4.eb
== building and installing Compiler/GCC/4.8.4/OpenMPI/1.8.4...
== fetching files...


Case #2, Trying to do the same with another package: Python-2.7.9-foss-2015a.eb, file is available as /apps/easybuild/ebfiles_repo-vbi/generic/Python/Python-2.7.9-foss-2015a.eb

Search finds it in both custom and system locations, with custom location specified as the first one:

dom@sfxlogin3:~> eb -S Python-2.7.9-foss-2015a.eb
== temporary log file in case of crash /tmp/eb-aYayGF/easybuild-eFhRtK.log
== Searching (case-insensitive) for 'Python-2.7.9-foss-2015a.eb' in /apps/easybuild/ebfiles_repo-vbi/generic
== Searching (case-insensitive) for 'python-2.7.9-foss-2015a.eb' in /apps/easybuild/ebfiles_repo-vbi/shadowfax-sandy_bridge
== Searching (case-insensitive) for 'python-2.7.9-foss-2015a.eb' in /apps/easybuild/ebfiles_repo/shadowfax-sandy_bridge
== Searching (case-insensitive) for 'python-2.7.9-foss-2015a.eb' in /apps/easybuild/software/shadowfax-sandy_bridge/Core/EasyBuild/2.0.0/lib64/python2.6/site-packages/easybuild_easyconfigs-2.0.0-py2.6.egg/easybuild/easyconfigs
CFGS1=/apps/easybuild/ebfiles_repo-vbi/generic/Python
CFGS2=/apps/easybuild/software/shadowfax-sandy_bridge/Core/EasyBuild/2.0.0/lib64/python2.6/site-packages/easybuild_easyconfigs-2.0.0-py2.6.egg/easybuild/easyconfigs/p/Python

  • $CFGS1/Python-2.7.9-foss-2015a.eb
  • $CFGS2/Python-2.7.9-foss-2015a.eb
    == temporary log file /tmp/eb-aYayGF/easybuild-eFhRtK.log has been removed.
    == temporary directory /tmp/eb-aYayGF has been removed.

Dry run shows only the system location:

dom@sfxlogin3:~> eb Python-2.7.9-foss-2015a.eb -Dr
== temporary log file in case of crash /tmp/eb-nionjg/easybuild-frIi_i.log
Dry run: printing build status of easyconfigs and dependencies
CFGS=/apps/easybuild/software/shadowfax-sandy_bridge/Core/EasyBuild/2.0.0/lib64/python2.6/site-packages/easybuild_easyconfigs-2.0.0-py2.6.egg/easybuild/easyconfigs

  • $CFGS/g/GCC/GCC-4.9.2.eb (module: Core | GCC/4.9.2)
  • $CFGS/o/OpenBLAS/OpenBLAS-0.2.13-GCC-4.9.2-LAPACK-3.5.0.eb (module: Compiler/GCC/4.9.2 | OpenBLAS/0.2.13-LAPACK-3.5.0)
  • $CFGS/l/libtool/libtool-2.4.2-GCC-4.9.2.eb (module: Compiler/GCC/4.9.2 | libtool/2.4.2)
  • $CFGS/m/M4/M4-1.4.17-GCC-4.9.2.eb (module: Compiler/GCC/4.9.2 | M4/1.4.17)
  • $CFGS/a/Autoconf/Autoconf-2.69-GCC-4.9.2.eb (module: Compiler/GCC/4.9.2 | Autoconf/2.69)
  • $CFGS/a/Automake/Automake-1.15-GCC-4.9.2.eb (module: Compiler/GCC/4.9.2 | Automake/1.15)
  • $CFGS/n/numactl/numactl-2.0.10-GCC-4.9.2.eb (module: Compiler/GCC/4.9.2 | numactl/2.0.10)
  • $CFGS/h/hwloc/hwloc-1.10.0-GCC-4.9.2.eb (module: Compiler/GCC/4.9.2 | hwloc/1.10.0)
  • $CFGS/o/OpenMPI/OpenMPI-1.8.4-GCC-4.9.2.eb (module: Compiler/GCC/4.9.2 | OpenMPI/1.8.4)
  • $CFGS/g/gompi/gompi-2015a.eb (module: Core | gompi/2015a)
  • $CFGS/f/FFTW/FFTW-3.3.4-gompi-2015a.eb (module: MPI/GCC/4.9.2/OpenMPI/1.8.4 | FFTW/3.3.4)
  • $CFGS/s/ScaLAPACK/ScaLAPACK-2.0.2-gompi-2015a-OpenBLAS-0.2.13-LAPACK-3.5.0.eb (module: MPI/GCC/4.9.2/OpenMPI/1.8.4 | ScaLAPACK/2.0.2-OpenBLAS-0.2.13-LAPACK-3.5.0)
  • $CFGS/f/foss/foss-2015a.eb (module: Core | foss/2015a)
  • $CFGS/n/ncurses/ncurses-5.9-foss-2015a.eb (module: MPI/GCC/4.9.2/OpenMPI/1.8.4 | ncurses/5.9)
  • $CFGS/b/bzip2/bzip2-1.0.6-foss-2015a.eb (module: MPI/GCC/4.9.2/OpenMPI/1.8.4 | bzip2/1.0.6)
  • $CFGS/z/zlib/zlib-1.2.8-foss-2015a.eb (module: MPI/GCC/4.9.2/OpenMPI/1.8.4 | zlib/1.2.8)
  • $CFGS/l/libreadline/libreadline-6.3-foss-2015a.eb (module: MPI/GCC/4.9.2/OpenMPI/1.8.4 | libreadline/6.3)
  • $CFGS/p/Python/Python-2.7.9-foss-2015a.eb (module: MPI/GCC/4.9.2/OpenMPI/1.8.4 | Python/2.7.9)
    == temporary log file /tmp/eb-nionjg/easybuild-frIi_i.log has been removed.
    == temporary directory /tmp/eb-nionjg has been removed.
    dom@sfxlogin3:~>

Command line flag issue

I notice that if I forget to include a value after --deprecated , eb (v 1.16.1) seems to ignore flags that come afterwards. E.g.:

eb --deprecated=2.0 --dry-run popt-1.16.eb
gives me a dry run report, as it should.

eb --dry-run --deprecated popt-1.16.eb
complains that --deprecated is used improperly and fails, as it should.

But:
eb --deprecated --dry-run popt-1.16.eb
installs popt fully and
eb --deprecated --hidden popt-1.16.eb
installs popt, but does not install it as hidden.

Of course Im using the flag incorrectly.

-Eric

config.cfg ignored

I generated a default configuration with eb --confighelp > $HOME/.easybuild/config.cfg

And modified a few values
[config]
buildpath=/tmp
installpath=/opt/apps
modules-tool=Lmod

now I am trying to install gzip but the settings on the config.cfg seem to be ignored.

I have tried to put the parameters on the command line and it worked.
eb -l --buildpath=/tmp --installpath=/opt/apps gzip.eb

Improvement request, print modules loaded to stdout.

For 2 reasons I find it very useful to ALWAYS output which module was loaded as they are loaded:

  1. users sometimes months or years later want to be able to reproduce scientific results, even more importantly if they are published. Without know which versions of each dependency were loaded it can be a nightmare to try to figure out which compilers, MPI stack, and libraries were used.
  2. debugging a users problem is quite difficult without knowing exactly what was in a users environment.

I propose that this be appended to every module file:
if [module-info mode load] {
puts stderr "Module [module-info name] loaded "
}

It has this result:
$ module load GCC
Module GCC/4.6.3 loaded
$

I've never seen this cause a problem, it also raises awareness of the user. If there are 4 linear algebra libraries available I find it very useful to expose that to the user so that when they hear that a particular library is good/bad at something that they realize they have a choice.

Additionally they don't have to try to figure out from echo $PATH or echo $LD_LIBRARY_PATH, or some flag to try to figure out what version is in use.

Basically hiding the version info is bad and it should be default and not require adding verbosity flags.

advanced debug logging

export DEBUG_EASYBUILD_OPTIONS=1

enables early debugging (unset or set to 0 to disable)

export FANCYLOGGER_GETLOGGER_DEBUG=1

enables debugging in fancylogger getLogger

export FANCYLOGGER_LOGLEVEL_DEBUG=1

enables debugging in fancylogger setLogLevel

Easybuild 1.15.1 crashes while building GCC 4.9.1

Hello,

I have installed Easybuild 1.15.1 using the bootstrap method to the directory /eb, then edited the module file for Easybuild to set the environment variable EASYBUILD_PREFIX to "/eb"

When I tried to install GCC versions 4.9.1, easybuild has crashed during the build process, and I couldn't find a place to start debugging my issue from. Here is the log file for the installation process.

Easybuild was installed using Python 2.4.3.

I would appreciate any help with this issue.

Thanks you in advance.

Document toolchain versioning scheme

Current toolchain versioning scheme is a bit ad-hoc in general, but it is consistently followed in all toolchains. It would be nice to have it documented in the wiki because it is not obvious.

eb fails to download sources, wget succeeds

After setting the http_proxy and https_proxy environment variables, I was able to install EasyBuild 2.0 using the bootstrap script on a server running ScientificLinux 6 which is behind a corporate proxy. When I try to download and build, e.g. using the command

eb $CFGS1/g/GCC/GCC-4.9.2-CLooG.eb -d -r

I get the output

== temporary log file in case of crash /tmp/eb-ZyXjPR/easybuild-FwVY0e.log
== resolving dependencies ...
== processing EasyBuild easyconfig /cm/shared/local/easybuild/software/EasyBuild/2.0.0/lib/python2.6/site-packages/easybuild_easyconfigs-2.0.0-py2.6.egg/easybuild/easyconfigs/g/GCC/GCC-4.9.2-CLooG.eb
== building and installing GCC/4.9.2-CLooG...
== fetching files...

and the program hangs. Looking into the log file, I can see this:

== 2015-04-21 17:53:14,176 main.filetools DEBUG Trying to download gcc-4.9.2.tar.bz2 from http://ftpmirror.gnu.org/gcc/gcc-4.9.2/gcc-4.9.2.tar.bz2 to /home/<user>/easybuild/sources/g/GCC/gcc-4.9.2.tar.bz2
== 2015-04-21 17:53:14,176 main.filetools DEBUG Using timeout of 10 seconds for initiating download
== 2015-04-21 17:53:14,176 main.filetools DEBUG Not creating existing path /home/psa2545/easybuild/sources/g/GCC
== 2015-04-21 17:53:17,423 main.filetools DEBUG response code for given url http://ftpmirror.gnu.org/gcc/gcc-4.9.2/gcc-4.9.2.tar.bz2: 200
== 2015-04-21 17:54:58,266 main.filetools WARNING IOError occurred while trying to download http://ftpmirror.gnu.org/gcc/gcc-4.9.2/gcc-4.9.2.tar.bz2 to /home/<user>/easybuild/sources/g/GCC/gcc-4.9.2.tar.bz2: timed out
== 2015-04-21 17:54:58,266 main.filetools INFO Attempt 1 of downloading http://ftpmirror.gnu.org/gcc/gcc-4.9.2/gcc-4.9.2.tar.bz2 to /home/<user>/easybuild/sources/g/GCC/gcc-4.9.2.tar.bz2 failed, trying again... 
== 2015-04-21 17:55:01,297 main.filetools DEBUG response code for given url http://ftpmirror.gnu.org/gcc/gcc-4.9.2/gcc-4.9.2.tar.bz2: 200

After Ctrl-C, the last few lines of the python stack trace are:

  self.fetch_sources(self.cfg['sources'], checksums=self.cfg['checksums'])
  File "/cm/shared/local/easybuild/software/EasyBuild/2.0.0/lib/python2.6/site-packages/easybuild_framework-2.0.0-py2.6.egg/easybuild/framework/easyblock.py", line 267, in fetch_sources
    path = self.obtain_file(source)
  File "/cm/shared/local/easybuild/software/EasyBuild/2.0.0/lib/python2.6/site-packages/easybuild_framework-2.0.0-py2.6.egg/easybuild/framework/easyblock.py", line 561, in obtain_file
    if download_file(filename, fullurl, targetpath):
  File "/cm/shared/local/easybuild/software/EasyBuild/2.0.0/lib/python2.6/site-packages/easybuild_framework-2.0.0-py2.6.egg/easybuild/tools/filetools.py", line 278, in download_file
    write_file(path, url_fd.read())
  File "/usr/lib64/python2.6/socket.py", line 354, in read
    data = self._sock.recv(rbufsize)
  File "/usr/lib64/python2.6/httplib.py", line 542, in read
    s = self.fp.read(amt)
  File "/usr/lib64/python2.6/socket.py", line 383, in read
    data = self._sock.recv(left)

I know that using easybuild behind a proxy was an issue in previous versions, but I was happy to read that this has been fixed for 2.0, and I was hoping I could avoid downloading the sources by hand. It's strange since the bootstrap script succeeded in downloading and also I can download the gcc *.tar.bz file using wget without problems. By the way, is there a way to get easybuild to print the list of files it wants to download, e.g. for piping to wget?

GROMACS-4.6.5-goolf-1.4.10-mt.eb has all threads pinned to first core (OpenBLAS problem)

Hi there,

I've just tried building GROMACS-4.6.5-goolf-1.4.10-mt.eb and when I run a test I see:

Using 8 MPI threads

but performance is bad and on investigation it appears all threads are pinned to the first core of the system.

This appears to be an OpenBLAS issue (OpenBLAS/0.2.6-gompi-1.4.10-LAPACK-3.4.2) as I can take the mdrun binary onto our clusters and run it against our OpenBLAS libraries and it runs as expected.

We build our OpenBLAS with USE_OPENMP=1 whilst EasyBuild builds it with USE_THREAD=1

Looking at the OpenBLAS FAQ I find:

https://github.com/xianyi/OpenBLAS/wiki/faq#multi-threaded

If your application is already multi-threaded, it will conflict with OpenBLAS multi-threading.
Thus, you must set OpenBLAS to use single thread as following.

    export OPENBLAS_NUM_THREADS=1 in the environment variables. Or
    Call openblas_set_num_threads(1) in the application on runtime. Or
    Build OpenBLAS single thread version, e.g. make USE_THREAD=0

If I run with OPENBLAS_NUM_THREADS=1 using the EB GROMACS and OpenBLAS I get expected performance (threads using all cores).

Investigating with strace I can see that by default the application ends up pinning itself to the first core of the system (the final call to sched_setaffinity()):

sched_setaffinity(0, 128,  { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }) = 0
sched_setaffinity(0, 128,  { 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }) = 0
sched_setaffinity(0, 128,  { 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }) = 0
sched_setaffinity(0, 128,  { 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }) = 0
sched_setaffinity(0, 128,  { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }) = 0
sched_setaffinity(0, 128,  { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }) = 0
sched_setaffinity(0, 128,  { 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }) = 0
sched_setaffinity(0, 128,  { 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }) = 0
sched_setaffinity(0, 128,  { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }) = 0

However, if I set that environment variable I see that it pins itself to all cores on the system (again the final call to sched_setaffinity() is the important one):

sched_setaffinity(0, 128,  { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }) = 0
sched_setaffinity(0, 128,  { 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }) = 0
sched_setaffinity(0, 128,  { 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }) = 0
sched_setaffinity(0, 128,  { 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }) = 0
sched_setaffinity(0, 128,  { 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }) = 0
sched_setaffinity(0, 128,  { 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }) = 0
sched_setaffinity(0, 128,  { 40, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }) = 0
sched_setaffinity(0, 128,  { 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }) = 0
sched_setaffinity(0, 128,  { ff, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }) = 0

Hope this is useful!

All the best,
Chris

Failed to determine egg dir path for easybuild-easyconfigs

Hi,

I have followed the installation instructions as described at https://github.com/hpcugent/easybuild/wiki/Installing-environment-modules-without-root-permissions. I have downloaded the file bootstrap_eb.py, exported EASYBUILD_PREFIX to /tmp (I also tried $home/tmp, a folder created in my home dir) but when I execute "python bootstrap_eb.py $EASYBUILD_PREFIX" I get the following message:

[[INFO]] Found module command 'modulecmd' (EnvironmentModulesC), so using it.
[[INFO]]

+++ STAGE 0: installing distribute via included (patched) distribute_setup.py...


Downloading http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz
Extracting in /tmp/tmpYNIUCb
Now working in /tmp/tmpYNIUCb/distribute-0.6.34
Installing Distribute
[[INFO]]

+++ STAGE 1: installing EasyBuild in temporary dir with easy_install...


[[ERROR]] Failed to determine egg dir path for easybuild-easyconfigs in /tmp/tmpIcMZ6q/eb_stage1 (subdirs: [])

A bit more info on my system:

  • RHEL 6.5
  • Python 2.6.6
  • Environment-modules 3.2.10
  • Tcl 8.5.15

Could you explain to me what can be done to fix this?

HDF4 doesn't build on ubuntu 12.10.

I believe it's been generally decided that architecture specific include files should not be in /usr/include. Thus the creation of /usr/include/x86_64-linux-gnu.

This is partially offset by defining:
export LIBRARY_PATH=/usr/lib/x86_64-linux-gnu/

This allows GCC to build for instance.

I couldn't get HDF4 to build because libjpeg couldn't be found, the two fixes are an os dependency on libjpeg-turbo8-dev and:
configopts = "--with-szip=$EBROOTSZIP --with-jpeg=/usr/include/x86_64-linux-gnu,/usr/lib/x86_64-linux-gnu/"

Then HDF4 builds.

Problem using eb on POWER architecture

I'm getting a traceback from eb trying to run on a POWER8 machine running RHEL6.5.

Traceback (most recent call last):
  File "/opt/apps/python/lib/python2.6/site-packages/easybuild/main.py", line 477, in <module>
    main()
  File "/opt/apps/python/lib/python2.6/site-packages/easybuild/main.py", line 129, in main
    init_session_state = session_state()
  File "/opt/apps/python/lib/python2.6/site-packages/easybuild/tools/testing.py", line 156, in session_state
    'system_info': get_system_info(),
  File "/opt/apps/python/lib/python2.6/site-packages/easybuild/tools/systemtools.py", line 461, in get_system_info
    'cpu_model': get_cpu_model(),
  File "/opt/apps/python/lib/python2.6/site-packages/easybuild/tools/systemtools.py", line 199, in get_cpu_model
    return regexp.search(txt).groupdict()['modelname'].strip()
AttributeError: 'NoneType' object has no attribute 'groupdict'

A head of /proc/cpuinfo from the machine in question shows the trouble. There's no modelname line:

processor       : 0
cpu             : POWER7 (architected), altivec supported
clock           : 4116.000000MHz
revision        : 2.1 (pvr 004b 0201)

processor       : 1
cpu             : POWER7 (architected), altivec supported
clock           : 4116.000000MHz
revision        : 2.1 (pvr 004b 0201)

(Note that the P8 isn't fully supported by the RHEL6.5 kernel, so it shows up as a POWER7. This is expected. (My POWER7 cluster shows similar output).

tbb 4.1.4.192 install problem with eb 1.11.0

tbb 4.1.4.192 does not install correctly on RedHat Enterprise 5.9, it picks the wrong tbb
library.
There are two options for tbb 4.1.4.192 gcc4.4 or gcc4.1 tbb libraries.

I made these modification to the tbb.py easyblock to correct this problem.

def get_library_directory():
    """Determine tbb library directory to use"""
    myCommand = "gcc --version"
    f = subprocess.Popen(myCommand,shell=True,stdin=subprocess.PIPE,stdout=subprocess.PIPE, stderr=subprocess.STDOUT).stdout
    for line in f:
        s = re.search('\d\.\d\.\d',line)
        if s:
            gcc_version = s.group()
            s2 = re.search('^4\.[4-9]',gcc_version)
            if s2:
               return "gcc4.4"
            else:
               return "gcc4.1"

    def install_step(self):
        """Custom install step, to add extra symlinks"""
        silent_cfg_names_map = None

        if LooseVersion(self.version) < LooseVersion('4.2'):
            silent_cfg_names_map = {
                'activation_name': ACTIVATION_NAME_2012,
                'license_file_name': LICENSE_FILE_NAME_2012,
            }

        super(EB_tbb, self).install_step(silent_cfg_names_map=silent_cfg_names_map)

        # save libdir
        os.chdir(self.installdir)
        if LooseVersion(self.version) < LooseVersion('4.1.0.0'):
           libglob = 'tbb/lib/intel64/cc*libc*_kernel*'

           libs = glob.glob(libglob)
           if len(libs):
              libdir = libs[-1]  # take the last one, should be ordered by cc get_version.
            # we're only interested in the last bit
              libdir = libdir.split('/')[-1]
           else:
              self.log.error("No libs found using %s in %s" % (libglob, self.installdir))
        else:
#           libglob = 'tbb/lib/intel64/gcc*'
            libdir = get_library_directory()
        self.libdir = libdir

        self.libpath = "%s/tbb/libs/intel64/%s/" % (self.installdir, libdir)
        self.log.debug("self.libpath: %s" % self.libpath)
        # applications go looking into tbb/lib so we move what's in there to libs
        # and symlink the right lib from /tbb/libs/intel64/... to lib
        install_libpath = os.path.join(self.installdir, 'tbb', 'lib')
        shutil.move(install_libpath, os.path.join(self.installdir, 'tbb', 'libs'))
        os.symlink(self.libpath, install_libpath)

Thanks,
Cormac.

Globally set configuration options.

Is there a way to globally set the configuration options that you can manually set with the eb command? I'm sorry if these aren't necessarily issues as they are just questions =/

Fix for bootstrap_eb.py

Hi,

as recommended here I give the fix provided by Kenneth during the easybuild workshop in Cyprus.

Reagards,

Alexander

  1. modulecmd python -H might not work, instead

modulecmd python help

should be invoked in bootstrap.sh

  1. bootstrap_eb.py: lib64 "extension" (see "diff" below)
@@ -47,8 +47,8 @@
 import tempfile

 # set print_debug to True for detailed progress info
-#print_debug = True
-print_debug = False
+print_debug = True
+#print_debug = False

 # clean PYTHONPATH to avoid finding readily installed stuff
 os.environ['PYTHONPATH'] = ''
@@ -76,22 +76,25 @@
     print "[[ERROR]]", msg
     sys.exit(1)

-def det_lib_path():
+def det_lib_path(lib=None):
     """Determine relative path of Python library dir."""
-    return os.path.join('lib', 'python%s' % sys.version[:3], 'site-packages')
+    if lib is None:
+        lib = 'lib'
+    return os.path.join(lib, 'python%s' % sys.version[:3], 'site-packages')

 def find_egg_dir_for(path, pkg):
     """Find full path of egg dir for given package."""

-    full_libpath = os.path.join(path, det_lib_path())
+    for lib in ['lib', 'lib64']:
+        full_libpath = os.path.join(path, det_lib_path(lib))

-    eggdir_regex = re.compile('%s-[0-9a-z.]+-py[0-9.]+.egg' % pkg.replace('-', '_'))
-    subdirs = os.listdir(full_libpath)
-    for subdir in subdirs:
-        if eggdir_regex.match(subdir):
-            eggdir = os.path.join(full_libpath, subdir)
-            debug("Found egg dir for %s at %s" % (pkg, eggdir))
-            return eggdir
+        eggdir_regex = re.compile('%s-[0-9a-z.]+-py[0-9.]+.egg' % pkg.replace('-', '_'))
+        subdirs = os.listdir(full_libpath)
+        for subdir in subdirs:
+            if eggdir_regex.match(subdir):
+                eggdir = os.path.join(full_libpath, subdir)
+                debug("Found egg dir for %s at %s" % (pkg, eggdir))
+                return eggdir

     error("Failed to determine egg dir path for %s in %s (subdirs: %s)" % (pkg, path, subdirs))

@@ -105,16 +108,19 @@
     debug("os.environ['PYTHONPATH'] after reset: %s" % os.environ['PYTHONPATH'])

     # make sure directory exists (this is required by setuptools)
-    full_libpath = os.path.join(path, det_lib_path())
-    if not os.path.exists(full_libpath):
-        os.makedirs(full_libpath)
+    all_full_libpaths = []
+    for lib in ['lib', 'lib64']:
+        full_libpath = os.path.join(path, det_lib_path(lib))
+        if not os.path.exists(full_libpath):
+            os.makedirs(full_libpath)
+        all_full_libpaths.append(full_libpath)

     # update PATH
     os.environ['PATH'] = ':'.join([os.path.join(path, 'bin'), os.environ.get('PATH', '')])
     # update actual Python search path
     sys.path.insert(0, path)
     # PYTHONPATH needs to be set as well, otherwise setuptools will fail
-    os.environ['PYTHONPATH'] = ':'.join([full_libpath, os.environ.get('PYTHONPATH', '')])
+    os.environ['PYTHONPATH'] = ':'.join(all_full_libpaths + [os.environ.get('PYTHONPATH', '')])

 #
 # Stage functions
@@ -288,7 +294,7 @@
     # see if an install dir was specified
     if not len(sys.argv) == 2:
         error("Usage: %s <install path>" % sys.argv[0])
-    install_path = os.path.abspath(sys.argv[1])
+    install_path = sys.argv[1]

     # create temporary dir for temporary installations
     tmpdir = tempfile.mkdtemp()
@@ -300,7 +306,8 @@

     # check whether 'modulecmd' is available, we need that
     out = os.path.join(tmpdir, 'modulecmd.out')
-    cmd = "modulecmd python -H"
+    cmd = "modulecmd python help"
+#    cmd = "modulecmd python -H"
     os.system("%s > %s 2>&1" % (cmd, out))
     modcmd_re = re.compile('Usage: module')
     txt = open(out, "r").read()

Clarify steps set up development easyblocks (and framework)

I followed the steps on this page as I tried to update impi.py:

https://github.com/hpcugent/easybuild/wiki/Setting-up-your-own-easyblocks-repository

and found that the only way my impy.py would be executed (being later in the PYTHONPATH), was to rename the installed EB's version of impy.py (and .pyc) to *.disabled.

It seemed to always include EB's version before mine otherwise.

I'm similarly curious about how to set up a development environment for the framework.
Can I use the same trick and just create easybuild/toolchain? I might have some changes
to intelmpi.py to test.

configs were easy with the robot environment variable. But I have changes for blocks and framework I'd like to test and merge but my previous development model was rather crude (overwriting the default installation with my updates... then trying to remember where all
those updates were). I'm just trying to understand the best approach.

Python/2.7.6 compilation error on a Centos 6.4 x86_64

Hi,
i tried to install Python 2.7.6 with goolf toolchain on a centos 6.4 Linux gloin.oma.be 2.6.32-358.18.1.el6.x86_64 but i always bump on the same error

Reading https://pypi.python.org/simple/six/\nDownload error on https://pypi.python.org/simple/six/: unknown url type: https -- Some packages may not be found!\nCouldn't find index page for 'six' (maybe misspelled?)\nScanning index of all packages (this may take a while)\nReading https://pypi.python.org/simple/\nDownload error on https://pypi.python.org/simple/: unknown url type: https -- Some packages may not be found!\nNo local packages or download links found for six\nerror: Could not find suitable distribution for Requirement.parse('six')\n'

Although the package is there .....
https://pypi.python.org/simple/six/

Can someone help me what is going on??

Under here a tail of the output when running the command:

[eb@gloin Python]$ eb Python-2.7.6-goolf-1.4.10.eb --robot
 == 2014-01-15 14:19:23,733 main INFO This is EasyBuild 1.10.0 (framework: 1.10.0, easyblocks: 1.10.0) on host gloin.oma.be.
== 2014-01-15 14:19:23,734 main INFO Using /tmp/easybuild-QOd1r2 as temporary directory
== 2014-01-15 14:19:23,734 main INFO Using robot path(s): ['/opt/eb/easybuild/easyconfigs']
== 2014-01-15 14:19:23,745 main INFO Extended list of robot paths with paths for installed easyconfigs: ['/opt/eb/easybuild/easyconfigs', '/opt/eb/easybuild/easyconfigs', '/opt/eb/easybuild/easyconfigs']
== 2014-01-15 14:19:23,746 main.config WARNING Deprecated functionality, will no longer work in v2.0: oldstyle init with modifications to support oldstyle options
== 2014-01-15 14:19:23,746 main.config WARNING Deprecated functionality, will no longer work in v2.0: oldstyle_init filename /opt/eb/lib/python2.6/site-packages/easybuild/easybuild_config.py kwargs {}
== 2014-01-15 14:19:23,747 main.config WARNING Deprecated functionality, will no longer work in v2.0: oldstyle_read_configuration filename /opt/eb/lib/python2.6/site-packages/easybuild/easybuild_config.py
== 2014-01-15 14:19:23,752 main.config WARNING Deprecated functionality, will no longer work in v2.0: oldstyle key build_path usage found, replacing with newkey buildpath
== 2014-01-15 14:19:23,753 main.config WARNING Deprecated functionality, will no longer work in v2.0: oldstyle key module_classes usage found, replacing with newkey moduleclasses
== 2014-01-15 14:19:23,753 main.config WARNING Deprecated functionality, will no longer work in v2.0: oldstyle key source_path usage found, replacing with newkey sourcepath
== 2014-01-15 14:19:23,754 main.config WARNING Deprecated functionality, will no longer work in v2.0: oldstyle key install_path usage found, replacing with newkey installpath
== 2014-01-15 14:19:23,754 main.config WARNING Deprecated functionality, will no longer work in v2.0: oldstyle key repository_path usage found, replacing with newkey repositorypath
== 2014-01-15 14:19:23,755 main.config WARNING Deprecated functionality, will no longer work in v2.0: oldstyle key log_dir usage found, replacing with newkey tmp_logdir
== 2014-01-15 14:19:23,755 main.config WARNING Deprecated functionality, will no longer work in v2.0: oldstyle key log_format usage found, replacing with newkey logfile_format
== 2014-01-15 14:19:23,756 main.config WARNING Deprecated functionality, will no longer work in v2.0: Adapt code to use read_environment from easybuild.tools.utilities and do not use oldstyle environment variables
== 2014-01-15 14:19:23,760 main.EasyConfig INFO Obtained list of valid module classes: ['base', 'bio', 'chem', 'compiler', 'lib', 'phys', 'tools', 'cae', 'data', 'debugger', 'devel', 'ide', 'math', 'mpi', 'numlib', 'perf', 'system', 'vis', 'geo', 'lang', 'toolchain']
== 2014-01-15 14:19:23,762 main.EasyConfig WARNING Deprecated functionality, will no longer work in v2.0: _legacy_license does not have to be checked
== 2014-01-15 14:19:23,770 main.easyconfig.format.pyheaderconfigobj WARNING Deprecated functionality, will no longer work in v2.0: Magic 'global' easyconfigs variables like shared_lib_ext should no longer be used
== 2014-01-15 14:19:23,774 main.EasyConfig WARNING Deprecated functionality, will no longer work in v2.0: _legacy_license does not have to be checked
== 2014-01-15 14:19:23,778 main.EasyConfig INFO setting config option toolchain: value {'version': '1.4.10', 'name': 'goolf'}
== 2014-01-15 14:19:23,778 main.EasyConfig INFO setting config option name: value matplotlib
== 2014-01-15 14:19:23,779 main.EasyConfig INFO setting config option moduleclass: value vis
== 2014-01-15 14:19:23,779 main.EasyConfig INFO setting config option versionsuffix: value -Python-2.7.6
== 2014-01-15 14:19:23,780 main.easyconfig.easyconfig WARNING Unable to resolve template value %(namelower)s-%(version)s.tar.gz with dict {'versionprefix': '', 'versionsuffix': '', 'toolchain_name': 'goolf', 'toolchain_version': '1.4.10'}
== 2014-01-15 14:19:23,780 main.EasyConfig INFO setting config option sources: value ['%(namelower)s-%(version)s.tar.gz']
== 2014-01-15 14:19:23,781 main.EasyConfig INFO setting config option version: value 1.3.1
== 2014-01-15 14:19:23,781 main.EasyConfig INFO setting config option dependencies: value [('Python', '2.7.6'), ('zlib', '1.2.7'), ('freetype', '2.4.11'), ('libpng', '1.6.6')]
== 2014-01-15 14:19:23,782 main.easyconfig.easyconfig WARNING Unable to resolve template value http://sourceforge.net/projects/matplotlib/files/matplotlib/matplotlib-%(version)s/ with dict {'versionprefix': '', 'versionsuffix': '', 'toolchain_name': 'goolf', 'toolchain_version': '1.4.10'}
== 2014-01-15 14:19:23,782 main.EasyConfig INFO setting config option source_urls: value ['http://sourceforge.net/projects/matplotlib/files/matplotlib/matplotlib-%(version)s/']
== 2014-01-15 14:19:23,783 main.EasyConfig INFO setting config option easyblock: value PythonPackage
== 2014-01-15 14:19:23,783 main.EasyConfig INFO setting config option homepage: value http://matplotlib.org
== 2014-01-15 14:19:23,783 main.EasyConfig INFO setting config option description: value matplotlib is a python 2D plotting library which produces publication quality figures in a variety of
 hardcopy formats and interactive environments across platforms. matplotlib can be used in python scripts, the python
 and ipython shell, web application servers, and six graphical user interface toolkits.
== 2014-01-15 14:19:23,787 main.EasyConfig INFO Validating easy block
== 2014-01-15 14:19:23,788 main.EasyConfig INFO Checking OS dependencies
== 2014-01-15 14:19:23,788 main.EasyConfig INFO OS dependencies ok: []
== 2014-01-15 14:19:23,789 main.EasyConfig INFO Checking skipsteps
== 2014-01-15 14:19:23,789 main.EasyConfig INFO Checking build option lists

...
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Distutils/__init__.py to __init__.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Distutils/build_ext.py to build_ext.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Distutils/extension.py to extension.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Runtime/__init__.py to __init__.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Tests/__init__.py to __init__.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Tests/TestCodeWriter.py to TestCodeWriter.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Tests/TestStringIOTree.py to TestStringIOTree.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Tests/xmlrunner.py to xmlrunner.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/__init__.py to __init__.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Build/BuildExecutable.py to BuildExecutable.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Build/Tests/__init__.py to __init__.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Build/Tests/TestInline.py to TestInline.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Build/Tests/TestStripLiterals.py to TestStripLiterals.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Build/__init__.py to __init__.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Build/Dependencies.py to Dependencies.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Build/Inline.py to Inline.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Utils.py to Utils.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/ExprNodes.py to ExprNodes.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/AnalysedTreeTransforms.py to AnalysedTreeTransforms.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Nodes.py to Nodes.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/ParseTreeTransforms.py to ParseTreeTransforms.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/PyrexTypes.py to PyrexTypes.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Visitor.py to Visitor.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/AutoDocTransforms.py to AutoDocTransforms.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Tests/TestTreePath.py to TestTreePath.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Tests/__init__.py to __init__.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Tests/TestSignatureMatching.py to TestSignatureMatching.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Tests/TestUtilityLoad.py to TestUtilityLoad.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Tests/TestVisitor.py to TestVisitor.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Tests/TestParseTreeTransforms.py to TestParseTreeTransforms.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Tests/TestTreeFragment.py to TestTreeFragment.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Tests/TestMemView.py to TestMemView.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Tests/TestBuffer.py to TestBuffer.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/DebugFlags.py to DebugFlags.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Errors.py to Errors.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/StringEncoding.py to StringEncoding.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/CmdLine.py to CmdLine.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/UtilNodes.py to UtilNodes.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/UtilityCode.py to UtilityCode.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/__init__.py to __init__.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Naming.py to Naming.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/TypeInference.py to TypeInference.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Symtab.py to Symtab.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Future.py to Future.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Optimize.py to Optimize.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Buffer.py to Buffer.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Code.py to Code.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Version.py to Version.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Pipeline.py to Pipeline.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/FlowControl.py to FlowControl.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/ModuleNode.py to ModuleNode.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/TreeFragment.py to TreeFragment.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/CythonScope.py to CythonScope.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/CodeGeneration.py to CodeGeneration.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Builtin.py to Builtin.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Annotate.py to Annotate.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Lexicon.py to Lexicon.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Main.py to Main.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/TypeSlots.py to TypeSlots.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/MemoryView.py to MemoryView.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Scanning.py to Scanning.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Options.py to Options.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Interpreter.py to Interpreter.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/FusedNode.py to FusedNode.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/Parsing.py to Parsing.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Compiler/TreePath.py to TreePath.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Utility/__init__.py to __init__.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Plex/Scanners.py to Scanners.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Plex/Transitions.py to Transitions.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Plex/DFA.py to DFA.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Plex/Errors.py to Errors.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Plex/Timing.py to Timing.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Plex/Traditional.py to Traditional.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Plex/__init__.py to __init__.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Plex/Actions.py to Actions.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Plex/Regexps.py to Regexps.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Plex/Lexicons.py to Lexicons.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Plex/Machines.py to Machines.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/CodeWriter.py to CodeWriter.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/StringIOTree.py to StringIOTree.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Debugging.py to Debugging.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/TestUtils.py to TestUtils.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Tempita/compat3.py to compat3.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Tempita/__init__.py to __init__.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Tempita/_looper.py to _looper.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Debugger/Tests/test_libpython_in_gdb.py to test_libpython_in_gdb.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Debugger/Tests/TestLibCython.py to TestLibCython.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Debugger/Tests/__init__.py to __init__.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Debugger/Tests/test_libcython_in_gdb.py to test_libcython_in_gdb.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Debugger/libcython.py to libcython.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Debugger/__init__.py to __init__.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Debugger/Cygdb.py to Cygdb.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Debugger/DebugWriter.py to DebugWriter.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Debugger/libpython.py to libpython.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython/Shadow.py to Shadow.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/pyximport/__init__.py to __init__.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/pyximport/pyximport.py to pyximport.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/pyximport/pyxbuild.py to pyxbuild.pyc
byte-compiling /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/cython.py to cython.pyc
running install_scripts
copying build/scripts-2.7/cython -> /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/bin
copying build/scripts-2.7/cygdb -> /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/bin
changing mode of /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/bin/cython to 775
changing mode of /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/bin/cygdb to 775
running install_egg_info
Writing /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/Cython-0.19.2-py2.7.egg-info

== 2014-01-15 14:34:56,257 main.environment INFO Environment variable PYTHONPATH set to /opt/eb/lib/python2.6/site-packages
== 2014-01-15 14:34:56,258 main.EB_Python WARNING Deprecated functionality, will no longer work in v2.0: Determine module path based on software name
== 2014-01-15 14:34:56,259 main.EasyConfig INFO Obtained list of valid module classes: ['base', 'bio', 'chem', 'compiler', 'lib', 'phys', 'tools', 'cae', 'data', 'debugger', 'devel', 'ide', 'math', 'mpi', 'numlib', 'perf', 'system', 'vis', 'geo', 'lang', 'toolchain']
== 2014-01-15 14:34:56,260 main.EasyConfig WARNING Deprecated functionality, will no longer work in v2.0: _legacy_license does not have to be checked
== 2014-01-15 14:34:56,262 main.easyconfig.format.pyheaderconfigobj WARNING Deprecated functionality, will no longer work in v2.0: Magic 'global' easyconfigs variables like shared_lib_ext should no longer be used
== 2014-01-15 14:34:56,264 main.EasyConfig WARNING Deprecated functionality, will no longer work in v2.0: _legacy_license does not have to be checked
== 2014-01-15 14:34:56,266 main.EasyConfig INFO setting config option toolchain: value {'version': '1.4.10', 'name': 'goolf'}
== 2014-01-15 14:34:56,266 main.EasyConfig INFO setting config option name: value Python
== 2014-01-15 14:34:56,267 main.easyconfig.easyconfig WARNING Unable to resolve template value python-%(name)s-%(version)s.tar.gz with dict {'versionprefix': '', 'versionsuffix': '', 'toolchain_name': 'goolf', 'toolchain_version': '1.4.10'}
== 2014-01-15 14:34:56,267 main.easyconfig.easyconfig WARNING Unable to resolve template value liac-%(name)s-%(version)s.zip with dict {'versionprefix': '', 'versionsuffix': '', 'toolchain_name': 'goolf', 'toolchain_version': '1.4.10'}
== 2014-01-15 14:34:56,267 main.EasyConfig INFO setting config option exts_list: value [('setuptools', '1.4.2', {'source_urls': ['http://pypi.python.org/packages/source/s/setuptools/']}), ('pip', '1.4.1', {'source_urls': ['http://pypi.python.org/packages/source/p/pip/']}), ('nose', '1.3.0', {'source_urls': ['http://pypi.python.org/packages/source/n/nose/']}), ('numpy', '1.8.0', {'patches': ['numpy-1.8.0-mkl.patch'], 'source_urls': [('http://sourceforge.net/projects/numpy/files/NumPy/1.8.0', 'download')]}), ('scipy', '0.13.1', {'source_urls': [('http://sourceforge.net/projects/scipy/files/scipy/0.13.1', 'download')]}), ('mpi4py', '1.3.1', {'source_urls': ['https://mpi4py.googlecode.com/files/']}), ('paycheck', '1.0.2', {'source_urls': ['http://pypi.python.org/packages/source/p/paycheck/']}), ('argparse', '1.2.1', {'source_urls': ['http://argparse.googlecode.com/files/']}), ('lockfile', '0.9.1', {'source_urls': ['https://pypi.python.org/packages/source/l/lockfile/']}), ('Cython', '0.19.2', {'source_urls': ['http://www.cython.org/release/']}), ('dateutil', '2.2', {'source_tmpl': 'python-%(name)s-%(version)s.tar.gz', 'source_urls': ['http://pypi.python.org/packages/source/p/python-dateutil/']}), ('deap', '0.9.1', {'source_urls': ['https://deap.googlecode.com/files/']}), ('decorator', '3.4.0', {'source_urls': ['https://pypi.python.org/packages/source/d/decorator/']}), ('arff', '1.1', {'source_tmpl': 'liac-%(name)s-%(version)s.zip', 'source_urls': ['https://pypi.python.org/packages/source/l/liac-arff/']}), ('pycrypto', '2.6.1', {'modulename': 'Crypto', 'source_urls': ['http://ftp.dlitz.net/pub/dlitz/crypto/pycrypto/']}), ('paramiko', '1.12.0', {'source_urls': ['https://pypi.python.org/packages/source/p/paramiko/']})]
== 2014-01-15 14:34:56,268 main.EasyConfig INFO setting config option moduleclass: value lang
== 2014-01-15 14:34:56,268 main.easyconfig.easyconfig WARNING Unable to resolve template value %(name)s-%(version)s.tgz with dict {'versionprefix': '', 'versionsuffix': '', 'toolchain_name': 'goolf', 'toolchain_version': '1.4.10'}
== 2014-01-15 14:34:56,268 main.EasyConfig INFO setting config option sources: value ['%(name)s-%(version)s.tgz']
== 2014-01-15 14:34:56,268 main.EasyConfig INFO setting config option version: value 2.7.6
== 2014-01-15 14:34:56,269 main.EasyConfig INFO setting config option dependencies: value [('bzip2', '1.0.6'), ('zlib', '1.2.7'), ('libreadline', '6.2'), ('ncurses', '5.9')]
== 2014-01-15 14:34:56,269 main.easyconfig.easyconfig WARNING Unable to resolve template value http://www.python.org/ftp/%(namelower)s/%(version)s/ with dict {'versionprefix': '', 'versionsuffix': '', 'toolchain_name': 'goolf', 'toolchain_version': '1.4.10'}
== 2014-01-15 14:34:56,269 main.EasyConfig INFO setting config option source_urls: value ['http://www.python.org/ftp/%(namelower)s/%(version)s/']
== 2014-01-15 14:34:56,269 main.EasyConfig INFO setting config option toolchainopts: value {'opt': True, 'optarch': True, 'pic': True}
== 2014-01-15 14:34:56,269 main.EasyConfig INFO setting config option homepage: value http://python.org/
== 2014-01-15 14:34:56,270 main.EasyConfig INFO setting config option description: value Python is a programming language that lets you work more quickly and integrate your systems more effectively.
== 2014-01-15 14:34:56,272 main.EasyConfig INFO Validating easy block
== 2014-01-15 14:34:56,272 main.EasyConfig INFO Checking OS dependencies
== 2014-01-15 14:34:56,272 main.EasyConfig INFO OS dependencies ok: []
== 2014-01-15 14:34:56,273 main.EasyConfig INFO Checking skipsteps
== 2014-01-15 14:34:56,273 main.EasyConfig INFO Checking build option lists
== 2014-01-15 14:34:56,273 main.EasyConfig INFO Checking licenses
== 2014-01-15 14:34:56,273 main.EasyConfig WARNING Deprecated functionality, will no longer work in v2.0: Mandatory license not enforced
== 2014-01-15 14:34:56,280 main.EnvironmentModulesC INFO Prepended list of module paths with path used by EasyBuild: /opt/eb/.local/easybuild/modules/all
== 2014-01-15 14:34:56,280 main.EnvironmentModulesC INFO $MODULEPATH set based on list of module paths: /opt/eb/.local/easybuild/modules/all:/tmp/easybuild-QOd1r2/tmpaHu2VY/all:/usr/share/Modules/modulefiles:/etc/modulefiles
== 2014-01-15 14:34:56,280 main.filetools INFO Command modulecmd found at /usr/bin/modulecmd
== 2014-01-15 14:34:56,281 main.EnvironmentModulesC INFO Full path for module command is /usr/bin/modulecmd, so using it
== 2014-01-15 14:34:56,343 main.Goolf INFO _get_optimal_architecture: using march=native as optarch for Intel.
== 2014-01-15 14:34:56,628 main.Goolf INFO List of toolchain dependency modules and toolchain definition match!
== 2014-01-15 14:34:56,652 main.ToolchainOptions WARNING option: option with name _opt_CC returns None
== 2014-01-15 14:34:56,653 main.ToolchainOptions WARNING option: option with name _opt_CXX returns None
== 2014-01-15 14:34:56,653 main.ToolchainOptions WARNING option: option with name _opt_F77 returns None
== 2014-01-15 14:34:56,654 main.ToolchainOptions WARNING option: option with name _opt_F90 returns None
== 2014-01-15 14:34:56,770 main.ToolchainOptions WARNING option: option with name _opt_MPIF77 returns None
== 2014-01-15 14:34:56,776 main.ToolchainOptions WARNING option: option with name _opt_MPIF90 returns None
== 2014-01-15 14:34:56,858 main.LinkLibraryPaths WARNING flags_for_subdirs: directory /opt/eb/.local/easybuild/software/OpenBLAS/0.2.6-gompi-1.4.10-LAPACK-3.4.2/lib64 was not found
== 2014-01-15 14:34:57,006 main.LinkLibraryPaths WARNING flags_for_subdirs: directory /opt/eb/.local/easybuild/software/OpenBLAS/0.2.6-gompi-1.4.10-LAPACK-3.4.2/lib64 was not found
== 2014-01-15 14:34:57,144 main.LinkLibraryPaths WARNING flags_for_subdirs: directory /opt/eb/.local/easybuild/software/ScaLAPACK/2.0.2-gompi-1.4.10-OpenBLAS-0.2.6-LAPACK-3.4.2/lib64 was not found
== 2014-01-15 14:34:57,157 main.LinkLibraryPaths WARNING flags_for_subdirs: directory /opt/eb/.local/easybuild/software/FFTW/3.3.3-gompi-1.4.10/lib64 was not found
== 2014-01-15 14:34:57,168 main.environment INFO Environment variable CPPFLAGS set to -I/opt/eb/.local/easybuild/software/OpenBLAS/0.2.6-gompi-1.4.10-LAPACK-3.4.2/include -I/opt/eb/.local/easybuild/software/ScaLAPACK/2.0.2-gompi-1.4.10-OpenBLAS-0.2.6-LAPACK-3.4.2/include -I/opt/eb/.local/easybuild/software/FFTW/3.3.3-gompi-1.4.10/include
== 2014-01-15 14:34:57,169 main.environment INFO Environment variable EBVARCPPFLAGS set to -I/opt/eb/.local/easybuild/software/OpenBLAS/0.2.6-gompi-1.4.10-LAPACK-3.4.2/include -I/opt/eb/.local/easybuild/software/ScaLAPACK/2.0.2-gompi-1.4.10-OpenBLAS-0.2.6-LAPACK-3.4.2/include -I/opt/eb/.local/easybuild/software/FFTW/3.3.3-gompi-1.4.10/include
== 2014-01-15 14:34:57,169 main.environment INFO Environment variable MPI_INC_DIR set to /opt/eb/.local/easybuild/software/OpenMPI/1.6.4-GCC-4.7.2/include
== 2014-01-15 14:34:57,169 main.environment INFO Environment variable EBVARMPI_INC_DIR set to /opt/eb/.local/easybuild/software/OpenMPI/1.6.4-GCC-4.7.2/include
== 2014-01-15 14:34:57,169 main.environment INFO Environment variable LIBSCALAPACK set to -lscalapack -lopenblas -lgfortran
== 2014-01-15 14:34:57,170 main.environment INFO Environment variable EBVARLIBSCALAPACK set to -lscalapack -lopenblas -lgfortran
== 2014-01-15 14:34:57,170 main.environment INFO Environment variable MPI_LIB_DIR set to /opt/eb/.local/easybuild/software/OpenMPI/1.6.4-GCC-4.7.2/lib
== 2014-01-15 14:34:57,170 main.environment INFO Environment variable EBVARMPI_LIB_DIR set to /opt/eb/.local/easybuild/software/OpenMPI/1.6.4-GCC-4.7.2/lib
== 2014-01-15 14:34:57,170 main.environment INFO Environment variable LAPACK_INC_DIR set to /opt/eb/.local/easybuild/software/OpenBLAS/0.2.6-gompi-1.4.10-LAPACK-3.4.2/include
== 2014-01-15 14:34:57,170 main.environment INFO Environment variable EBVARLAPACK_INC_DIR set to /opt/eb/.local/easybuild/software/OpenBLAS/0.2.6-gompi-1.4.10-LAPACK-3.4.2/include
== 2014-01-15 14:34:57,171 main.environment INFO Environment variable FFT_STATIC_LIBS set to libfftw3.a
== 2014-01-15 14:34:57,171 main.environment INFO Environment variable EBVARFFT_STATIC_LIBS set to libfftw3.a
== 2014-01-15 14:34:57,171 main.environment INFO Environment variable CXXFLAGS set to -fPIC -O3 -march=native
== 2014-01-15 14:34:57,171 main.environment INFO Environment variable EBVARCXXFLAGS set to -fPIC -O3 -march=native
== 2014-01-15 14:34:57,171 main.environment INFO Environment variable BLAS_LAPACK_LIB_DIR set to /opt/eb/.local/easybuild/software/OpenBLAS/0.2.6-gompi-1.4.10-LAPACK-3.4.2/lib
== 2014-01-15 14:34:57,172 main.environment INFO Environment variable EBVARBLAS_LAPACK_LIB_DIR set to /opt/eb/.local/easybuild/software/OpenBLAS/0.2.6-gompi-1.4.10-LAPACK-3.4.2/lib
== 2014-01-15 14:34:57,172 main.environment INFO Environment variable MPICC set to mpicc
== 2014-01-15 14:34:57,172 main.environment INFO Environment variable EBVARMPICC set to mpicc
== 2014-01-15 14:34:57,172 main.environment INFO Environment variable MPI_LIB_STATIC set to 
== 2014-01-15 14:34:57,173 main.environment INFO Environment variable EBVARMPI_LIB_STATIC set to 
== 2014-01-15 14:34:57,173 main.environment INFO Environment variable LIBS set to -lm -lpthread
== 2014-01-15 14:34:57,173 main.environment INFO Environment variable EBVARLIBS set to -lm -lpthread
== 2014-01-15 14:34:57,173 main.environment INFO Environment variable LIBLAPACK set to -lopenblas -lgfortran
== 2014-01-15 14:34:57,173 main.environment INFO Environment variable EBVARLIBLAPACK set to -lopenblas -lgfortran
== 2014-01-15 14:34:57,174 main.environment INFO Environment variable SCALAPACK_LIB_DIR set to /opt/eb/.local/easybuild/software/ScaLAPACK/2.0.2-gompi-1.4.10-OpenBLAS-0.2.6-LAPACK-3.4.2/lib
== 2014-01-15 14:34:57,174 main.environment INFO Environment variable EBVARSCALAPACK_LIB_DIR set to /opt/eb/.local/easybuild/software/ScaLAPACK/2.0.2-gompi-1.4.10-OpenBLAS-0.2.6-LAPACK-3.4.2/lib
== 2014-01-15 14:34:57,174 main.environment INFO Environment variable PRECFLAGS set to 
== 2014-01-15 14:34:57,174 main.environment INFO Environment variable EBVARPRECFLAGS set to 
== 2014-01-15 14:34:57,174 main.environment INFO Environment variable LIBSCALAPACK_MT_ONLY set to -lscalapack -lgfortran
== 2014-01-15 14:34:57,175 main.environment INFO Environment variable EBVARLIBSCALAPACK_MT_ONLY set to -lscalapack -lgfortran
== 2014-01-15 14:34:57,175 main.environment INFO Environment variable LIBLAPACK_MT set to -lopenblas -lgfortran
== 2014-01-15 14:34:57,175 main.environment INFO Environment variable EBVARLIBLAPACK_MT set to -lopenblas -lgfortran
== 2014-01-15 14:34:57,175 main.environment INFO Environment variable FLIBS set to -lgfortran
== 2014-01-15 14:34:57,175 main.environment INFO Environment variable EBVARFLIBS set to -lgfortran
== 2014-01-15 14:34:57,176 main.environment INFO Environment variable FFTW_STATIC_LIBS set to libfftw3.a
== 2014-01-15 14:34:57,176 main.environment INFO Environment variable EBVARFFTW_STATIC_LIBS set to libfftw3.a
== 2014-01-15 14:34:57,176 main.environment INFO Environment variable BLAS_STATIC_LIBS set to libopenblas.a,libgfortran.a
== 2014-01-15 14:34:57,176 main.environment INFO Environment variable EBVARBLAS_STATIC_LIBS set to libopenblas.a,libgfortran.a
== 2014-01-15 14:34:57,177 main.environment INFO Environment variable SCALAPACK_MT_STATIC_LIBS set to libscalapack.a,libopenblas.a,libgfortran.a,libpthread.a
== 2014-01-15 14:34:57,177 main.environment INFO Environment variable EBVARSCALAPACK_MT_STATIC_LIBS set to libscalapack.a,libopenblas.a,libgfortran.a,libpthread.a
== 2014-01-15 14:34:57,177 main.environment INFO Environment variable LIBSCALAPACK_MT set to -lscalapack -lopenblas -lpthread -lgfortran
== 2014-01-15 14:34:57,177 main.environment INFO Environment variable EBVARLIBSCALAPACK_MT set to -lscalapack -lopenblas -lpthread -lgfortran
== 2014-01-15 14:34:57,177 main.environment INFO Environment variable F90 set to gfortran
== 2014-01-15 14:34:57,178 main.environment INFO Environment variable EBVARF90 set to gfortran
== 2014-01-15 14:34:57,178 main.environment INFO Environment variable OMPI_F77 set to gfortran
== 2014-01-15 14:34:57,178 main.environment INFO Environment variable EBVAROMPI_F77 set to gfortran
== 2014-01-15 14:34:57,178 main.environment INFO Environment variable LIBSCALAPACK_ONLY set to -lscalapack -lgfortran
== 2014-01-15 14:34:57,178 main.environment INFO Environment variable EBVARLIBSCALAPACK_ONLY set to -lscalapack -lgfortran
== 2014-01-15 14:34:57,179 main.environment INFO Environment variable F90FLAGS set to -fPIC -O3 -march=native
== 2014-01-15 14:34:57,179 main.environment INFO Environment variable EBVARF90FLAGS set to -fPIC -O3 -march=native
== 2014-01-15 14:34:57,179 main.environment INFO Environment variable MPICXX set to mpicxx
== 2014-01-15 14:34:57,179 main.environment INFO Environment variable EBVARMPICXX set to mpicxx
== 2014-01-15 14:34:57,180 main.environment INFO Environment variable BLAS_LIB_DIR set to /opt/eb/.local/easybuild/software/OpenBLAS/0.2.6-gompi-1.4.10-LAPACK-3.4.2/lib
== 2014-01-15 14:34:57,180 main.environment INFO Environment variable EBVARBLAS_LIB_DIR set to /opt/eb/.local/easybuild/software/OpenBLAS/0.2.6-gompi-1.4.10-LAPACK-3.4.2/lib
== 2014-01-15 14:34:57,180 main.environment INFO Environment variable FFT_LIB_DIR set to /opt/eb/.local/easybuild/software/FFTW/3.3.3-gompi-1.4.10/lib
== 2014-01-15 14:34:57,180 main.environment INFO Environment variable EBVARFFT_LIB_DIR set to /opt/eb/.local/easybuild/software/FFTW/3.3.3-gompi-1.4.10/lib
== 2014-01-15 14:34:57,180 main.environment INFO Environment variable LIBFFT set to -lfftw3
== 2014-01-15 14:34:57,181 main.environment INFO Environment variable EBVARLIBFFT set to -lfftw3
== 2014-01-15 14:34:57,181 main.environment INFO Environment variable BLAS_LAPACK_MT_STATIC_LIBS set to libopenblas.a,libgfortran.a
== 2014-01-15 14:34:57,181 main.environment INFO Environment variable EBVARBLAS_LAPACK_MT_STATIC_LIBS set to libopenblas.a,libgfortran.a
== 2014-01-15 14:34:57,181 main.environment INFO Environment variable CC set to gcc
== 2014-01-15 14:34:57,181 main.environment INFO Environment variable EBVARCC set to gcc
== 2014-01-15 14:34:57,182 main.environment INFO Environment variable FFLAGS set to -fPIC -O3 -march=native
== 2014-01-15 14:34:57,182 main.environment INFO Environment variable EBVARFFLAGS set to -fPIC -O3 -march=native
== 2014-01-15 14:34:57,182 main.environment INFO Environment variable MPIF90 set to mpif90
== 2014-01-15 14:34:57,182 main.environment INFO Environment variable EBVARMPIF90 set to mpif90
== 2014-01-15 14:34:57,182 main.environment INFO Environment variable LAPACK_STATIC_LIBS set to libopenblas.a,libgfortran.a
== 2014-01-15 14:34:57,183 main.environment INFO Environment variable EBVARLAPACK_STATIC_LIBS set to libopenblas.a,libgfortran.a
== 2014-01-15 14:34:57,183 main.environment INFO Environment variable MPIF77 set to mpif77
== 2014-01-15 14:34:57,183 main.environment INFO Environment variable EBVARMPIF77 set to mpif77
== 2014-01-15 14:34:57,183 main.environment INFO Environment variable LIBBLAS_MT set to -lopenblas -lgfortran
== 2014-01-15 14:34:57,184 main.environment INFO Environment variable EBVARLIBBLAS_MT set to -lopenblas -lgfortran
== 2014-01-15 14:34:57,184 main.environment INFO Environment variable LIBBLAS set to -lopenblas -lgfortran
== 2014-01-15 14:34:57,184 main.environment INFO Environment variable EBVARLIBBLAS set to -lopenblas -lgfortran
== 2014-01-15 14:34:57,184 main.environment INFO Environment variable SCALAPACK_INC_DIR set to /opt/eb/.local/easybuild/software/ScaLAPACK/2.0.2-gompi-1.4.10-OpenBLAS-0.2.6-LAPACK-3.4.2/include
== 2014-01-15 14:34:57,184 main.environment INFO Environment variable EBVARSCALAPACK_INC_DIR set to /opt/eb/.local/easybuild/software/ScaLAPACK/2.0.2-gompi-1.4.10-OpenBLAS-0.2.6-LAPACK-3.4.2/include
== 2014-01-15 14:34:57,185 main.environment INFO Environment variable OMPI_CC set to gcc
== 2014-01-15 14:34:57,185 main.environment INFO Environment variable EBVAROMPI_CC set to gcc
== 2014-01-15 14:34:57,185 main.environment INFO Environment variable OPTFLAGS set to -O3 -march=native
== 2014-01-15 14:34:57,185 main.environment INFO Environment variable EBVAROPTFLAGS set to -O3 -march=native
== 2014-01-15 14:34:57,185 main.environment INFO Environment variable FFTW_INC_DIR set to /opt/eb/.local/easybuild/software/FFTW/3.3.3-gompi-1.4.10/include
== 2014-01-15 14:34:57,186 main.environment INFO Environment variable EBVARFFTW_INC_DIR set to /opt/eb/.local/easybuild/software/FFTW/3.3.3-gompi-1.4.10/include
== 2014-01-15 14:34:57,186 main.environment INFO Environment variable F77 set to gfortran
== 2014-01-15 14:34:57,186 main.environment INFO Environment variable EBVARF77 set to gfortran
== 2014-01-15 14:34:57,186 main.environment INFO Environment variable FFT_INC_DIR set to /opt/eb/.local/easybuild/software/FFTW/3.3.3-gompi-1.4.10/include
== 2014-01-15 14:34:57,186 main.environment INFO Environment variable EBVARFFT_INC_DIR set to /opt/eb/.local/easybuild/software/FFTW/3.3.3-gompi-1.4.10/include
== 2014-01-15 14:34:57,187 main.environment INFO Environment variable LAPACK_MT_STATIC_LIBS set to libopenblas.a,libgfortran.a
== 2014-01-15 14:34:57,187 main.environment INFO Environment variable EBVARLAPACK_MT_STATIC_LIBS set to libopenblas.a,libgfortran.a
== 2014-01-15 14:34:57,187 main.environment INFO Environment variable LAPACK_LIB_DIR set to /opt/eb/.local/easybuild/software/OpenBLAS/0.2.6-gompi-1.4.10-LAPACK-3.4.2/lib
== 2014-01-15 14:34:57,187 main.environment INFO Environment variable EBVARLAPACK_LIB_DIR set to /opt/eb/.local/easybuild/software/OpenBLAS/0.2.6-gompi-1.4.10-LAPACK-3.4.2/lib
== 2014-01-15 14:34:57,188 main.environment INFO Environment variable BLAS_LAPACK_STATIC_LIBS set to libopenblas.a,libgfortran.a
== 2014-01-15 14:34:57,188 main.environment INFO Environment variable EBVARBLAS_LAPACK_STATIC_LIBS set to libopenblas.a,libgfortran.a
== 2014-01-15 14:34:57,188 main.environment INFO Environment variable LIBLAPACK_ONLY set to -lopenblas -lgfortran
== 2014-01-15 14:34:57,188 main.environment INFO Environment variable EBVARLIBLAPACK_ONLY set to -lopenblas -lgfortran
== 2014-01-15 14:34:57,188 main.environment INFO Environment variable LIBLAPACK_MT_ONLY set to -lopenblas -lgfortran
== 2014-01-15 14:34:57,189 main.environment INFO Environment variable EBVARLIBLAPACK_MT_ONLY set to -lopenblas -lgfortran
== 2014-01-15 14:34:57,189 main.environment INFO Environment variable LDFLAGS set to -L/opt/eb/.local/easybuild/software/GCC/4.7.2/lib64 -L/opt/eb/.local/easybuild/software/GCC/4.7.2/lib -L/opt/eb/.local/easybuild/software/OpenBLAS/0.2.6-gompi-1.4.10-LAPACK-3.4.2/lib -L/opt/eb/.local/easybuild/software/ScaLAPACK/2.0.2-gompi-1.4.10-OpenBLAS-0.2.6-LAPACK-3.4.2/lib -L/opt/eb/.local/easybuild/software/FFTW/3.3.3-gompi-1.4.10/lib
== 2014-01-15 14:34:57,189 main.environment INFO Environment variable EBVARLDFLAGS set to -L/opt/eb/.local/easybuild/software/GCC/4.7.2/lib64 -L/opt/eb/.local/easybuild/software/GCC/4.7.2/lib -L/opt/eb/.local/easybuild/software/OpenBLAS/0.2.6-gompi-1.4.10-LAPACK-3.4.2/lib -L/opt/eb/.local/easybuild/software/ScaLAPACK/2.0.2-gompi-1.4.10-OpenBLAS-0.2.6-LAPACK-3.4.2/lib -L/opt/eb/.local/easybuild/software/FFTW/3.3.3-gompi-1.4.10/lib
== 2014-01-15 14:34:57,189 main.environment INFO Environment variable CXX set to g++
== 2014-01-15 14:34:57,189 main.environment INFO Environment variable EBVARCXX set to g++
== 2014-01-15 14:34:57,190 main.environment INFO Environment variable BLAS_LAPACK_INC_DIR set to /opt/eb/.local/easybuild/software/OpenBLAS/0.2.6-gompi-1.4.10-LAPACK-3.4.2/include
== 2014-01-15 14:34:57,190 main.environment INFO Environment variable EBVARBLAS_LAPACK_INC_DIR set to /opt/eb/.local/easybuild/software/OpenBLAS/0.2.6-gompi-1.4.10-LAPACK-3.4.2/include
== 2014-01-15 14:34:57,190 main.environment INFO Environment variable OMPI_FC set to gfortran
== 2014-01-15 14:34:57,190 main.environment INFO Environment variable EBVAROMPI_FC set to gfortran
== 2014-01-15 14:34:57,190 main.environment INFO Environment variable BLAS_INC_DIR set to /opt/eb/.local/easybuild/software/OpenBLAS/0.2.6-gompi-1.4.10-LAPACK-3.4.2/include
== 2014-01-15 14:34:57,191 main.environment INFO Environment variable EBVARBLAS_INC_DIR set to /opt/eb/.local/easybuild/software/OpenBLAS/0.2.6-gompi-1.4.10-LAPACK-3.4.2/include
== 2014-01-15 14:34:57,191 main.environment INFO Environment variable MPI_LIB_SHARED set to /opt/eb/.local/easybuild/software/OpenMPI/1.6.4-GCC-4.7.2/lib/libmpi.so
== 2014-01-15 14:34:57,191 main.environment INFO Environment variable EBVARMPI_LIB_SHARED set to /opt/eb/.local/easybuild/software/OpenMPI/1.6.4-GCC-4.7.2/lib/libmpi.so
== 2014-01-15 14:34:57,191 main.environment INFO Environment variable SCALAPACK_STATIC_LIBS set to libscalapack.a,libopenblas.a,libgfortran.a
== 2014-01-15 14:34:57,192 main.environment INFO Environment variable EBVARSCALAPACK_STATIC_LIBS set to libscalapack.a,libopenblas.a,libgfortran.a
== 2014-01-15 14:34:57,192 main.environment INFO Environment variable CFLAGS set to -fPIC -O3 -march=native
== 2014-01-15 14:34:57,192 main.environment INFO Environment variable EBVARCFLAGS set to -fPIC -O3 -march=native
== 2014-01-15 14:34:57,192 main.environment INFO Environment variable BLAS_MT_STATIC_LIBS set to libopenblas.a,libgfortran.a
== 2014-01-15 14:34:57,192 main.environment INFO Environment variable EBVARBLAS_MT_STATIC_LIBS set to libopenblas.a,libgfortran.a
== 2014-01-15 14:34:57,193 main.environment INFO Environment variable FFTW_LIB_DIR set to /opt/eb/.local/easybuild/software/FFTW/3.3.3-gompi-1.4.10/lib
== 2014-01-15 14:34:57,193 main.environment INFO Environment variable EBVARFFTW_LIB_DIR set to /opt/eb/.local/easybuild/software/FFTW/3.3.3-gompi-1.4.10/lib
== 2014-01-15 14:34:57,193 main.environment INFO Environment variable OMPI_CXX set to g++
== 2014-01-15 14:34:57,193 main.environment INFO Environment variable EBVAROMPI_CXX set to g++
== 2014-01-15 14:34:57,464 main.filetools INFO cmd "python setup.py build" exited with exitcode 0 and output:
running build
running build_py
creating build
creating build/lib
creating build/lib/dateutil
copying dateutil/relativedelta.py -> build/lib/dateutil
copying dateutil/__init__.py -> build/lib/dateutil
copying dateutil/easter.py -> build/lib/dateutil
copying dateutil/tzwin.py -> build/lib/dateutil
copying dateutil/parser.py -> build/lib/dateutil
copying dateutil/tz.py -> build/lib/dateutil
copying dateutil/rrule.py -> build/lib/dateutil
creating build/lib/dateutil/zoneinfo
copying dateutil/zoneinfo/__init__.py -> build/lib/dateutil/zoneinfo
running egg_info
writing requirements to python_dateutil.egg-info/requires.txt
writing python_dateutil.egg-info/PKG-INFO
writing top-level names to python_dateutil.egg-info/top_level.txt
writing dependency_links to python_dateutil.egg-info/dependency_links.txt
reading manifest file 'python_dateutil.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'python_dateutil.egg-info/SOURCES.txt'
copying dateutil/zoneinfo/zoneinfo--latest.tar.gz -> build/lib/dateutil/zoneinfo

== 2014-01-15 14:34:57,466 main.environment INFO Environment variable PYTHONPATH set to /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages:/opt/eb/lib/python2.6/site-packages
== 2014-01-15 14:34:58,159 main.filetools ERROR EasyBuild crashed with an error (at easybuild/tools/filetools.py:799 in parse_cmd_output): cmd " python setup.py install --prefix=/opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10 " exited with exitcode 1 and output:
running install
running bdist_egg
running egg_info
writing requirements to python_dateutil.egg-info/requires.txt
writing python_dateutil.egg-info/PKG-INFO
writing top-level names to python_dateutil.egg-info/top_level.txt
writing dependency_links to python_dateutil.egg-info/dependency_links.txt
reading manifest file 'python_dateutil.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'python_dateutil.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-x86_64/egg
running install_lib
running build_py
creating build/bdist.linux-x86_64
creating build/bdist.linux-x86_64/egg
creating build/bdist.linux-x86_64/egg/dateutil
copying build/lib/dateutil/relativedelta.py -> build/bdist.linux-x86_64/egg/dateutil
copying build/lib/dateutil/__init__.py -> build/bdist.linux-x86_64/egg/dateutil
copying build/lib/dateutil/easter.py -> build/bdist.linux-x86_64/egg/dateutil
copying build/lib/dateutil/tzwin.py -> build/bdist.linux-x86_64/egg/dateutil
creating build/bdist.linux-x86_64/egg/dateutil/zoneinfo
copying build/lib/dateutil/zoneinfo/__init__.py -> build/bdist.linux-x86_64/egg/dateutil/zoneinfo
copying build/lib/dateutil/zoneinfo/zoneinfo--latest.tar.gz -> build/bdist.linux-x86_64/egg/dateutil/zoneinfo
copying build/lib/dateutil/parser.py -> build/bdist.linux-x86_64/egg/dateutil
copying build/lib/dateutil/tz.py -> build/bdist.linux-x86_64/egg/dateutil
copying build/lib/dateutil/rrule.py -> build/bdist.linux-x86_64/egg/dateutil
byte-compiling build/bdist.linux-x86_64/egg/dateutil/relativedelta.py to relativedelta.pyc
byte-compiling build/bdist.linux-x86_64/egg/dateutil/__init__.py to __init__.pyc
byte-compiling build/bdist.linux-x86_64/egg/dateutil/easter.py to easter.pyc
byte-compiling build/bdist.linux-x86_64/egg/dateutil/tzwin.py to tzwin.pyc
byte-compiling build/bdist.linux-x86_64/egg/dateutil/zoneinfo/__init__.py to __init__.pyc
byte-compiling build/bdist.linux-x86_64/egg/dateutil/parser.py to parser.pyc
byte-compiling build/bdist.linux-x86_64/egg/dateutil/tz.py to tz.pyc
byte-compiling build/bdist.linux-x86_64/egg/dateutil/rrule.py to rrule.pyc
creating build/bdist.linux-x86_64/egg/EGG-INFO
copying python_dateutil.egg-info/PKG-INFO -> build/bdist.linux-x86_64/egg/EGG-INFO
copying python_dateutil.egg-info/SOURCES.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
copying python_dateutil.egg-info/dependency_links.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
copying python_dateutil.egg-info/not-zip-safe -> build/bdist.linux-x86_64/egg/EGG-INFO
copying python_dateutil.egg-info/requires.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
copying python_dateutil.egg-info/top_level.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
creating dist
creating 'dist/python_dateutil-2.2-py2.7.egg' and adding 'build/bdist.linux-x86_64/egg' to it
removing 'build/bdist.linux-x86_64/egg' (and everything under it)
Processing python_dateutil-2.2-py2.7.egg
creating /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/python_dateutil-2.2-py2.7.egg
Extracting python_dateutil-2.2-py2.7.egg to /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages
Adding python-dateutil 2.2 to easy-install.pth file

Installed /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/python_dateutil-2.2-py2.7.egg
Processing dependencies for python-dateutil==2.2
Searching for six
Reading https://pypi.python.org/simple/six/
Download error on https://pypi.python.org/simple/six/: unknown url type: https -- Some packages may not be found!
Couldn't find index page for 'six' (maybe misspelled?)
Scanning index of all packages (this may take a while)
Reading https://pypi.python.org/simple/
Download error on https://pypi.python.org/simple/: unknown url type: https -- Some packages may not be found!
No local packages or download links found for six
error: Could not find suitable distribution for Requirement.parse('six')

== 2014-01-15 14:34:58,161 main ERROR EasyBuild crashed with an error (at easybuild/tools/build_log.py:96 in exception): EasyBuild encountered an exception (at easybuild/main.py:809 in build_and_install_software): autoBuild Failed (last 300 chars): es (this may take a while)
Reading https://pypi.python.org/simple/
Download error on https://pypi.python.org/simple/: unknown url type: https -- Some packages may not be found!
No local packages or download links found for six
error: Could not find suitable distribution for Requirement.parse('six')
Traceback (most recent call last):
  File "/opt/eb/lib/python2.6/site-packages/easybuild/main.py", line 805, in build_and_install_software
    regtest_online=options.regtest_online)
  File "/opt/eb/lib/python2.6/site-packages/easybuild/framework/easyblock.py", line 1817, in run_all_steps
    self.run_step(stop_name, step_methods, skippable=skippable)
  File "/opt/eb/lib/python2.6/site-packages/easybuild/framework/easyblock.py", line 1699, in run_step
    m(self)
  File "/opt/eb/lib/python2.6/site-packages/easybuild/framework/easyblock.py", line 1782, in <lambda>
    ('extensions', 'taking care of extensions', [lambda x: x.extensions_step()], False),
  File "/opt/eb/lib/python2.6/site-packages/easybuild/framework/easyblock.py", line 1438, in extensions_step
    txt = inst.run()
  File "/opt/eb/lib/python2.6/site-packages/easybuild/easyblocks/generic/pythonpackage.py", line 213, in run
    self.install_step()
  File "/opt/eb/lib/python2.6/site-packages/easybuild/easyblocks/generic/pythonpackage.py", line 195, in install_step
    run_cmd(cmd, log_all=True, simple=True)
  File "/opt/eb/lib/python2.6/site-packages/easybuild/tools/filetools.py", line 533, in inner
    return func(cmd, *args, **kwargs)
  File "/opt/eb/lib/python2.6/site-packages/easybuild/tools/filetools.py", line 598, in run_cmd
    return parse_cmd_output(cmd, stdouterr, ec, simple, log_all, log_ok, regexp)
  File "/opt/eb/lib/python2.6/site-packages/easybuild/tools/filetools.py", line 799, in parse_cmd_output
    _log.error('cmd "%s" exited with exitcode %s and output:\n%s' % (cmd, ec, stdouterr))
  File "/opt/eb/lib/python2.6/site-packages/easybuild/tools/build_log.py", line 88, in error
    raise EasyBuildError(newMsg)
EasyBuildError: 'EasyBuild crashed with an error (at easybuild/tools/filetools.py:799 in parse_cmd_output): cmd " python setup.py install --prefix=/opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10 " exited with exitcode 1 and output:\nrunning install\nrunning bdist_egg\nrunning egg_info\nwriting requirements to python_dateutil.egg-info/requires.txt\nwriting python_dateutil.egg-info/PKG-INFO\nwriting top-level names to python_dateutil.egg-info/top_level.txt\nwriting dependency_links to python_dateutil.egg-info/dependency_links.txt\nreading manifest file \'python_dateutil.egg-info/SOURCES.txt\'\nreading manifest template \'MANIFEST.in\'\nwriting manifest file \'python_dateutil.egg-info/SOURCES.txt\'\ninstalling library code to build/bdist.linux-x86_64/egg\nrunning install_lib\nrunning build_py\ncreating build/bdist.linux-x86_64\ncreating build/bdist.linux-x86_64/egg\ncreating build/bdist.linux-x86_64/egg/dateutil\ncopying build/lib/dateutil/relativedelta.py -> build/bdist.linux-x86_64/egg/dateutil\ncopying build/lib/dateutil/__init__.py -> build/bdist.linux-x86_64/egg/dateutil\ncopying build/lib/dateutil/easter.py -> build/bdist.linux-x86_64/egg/dateutil\ncopying build/lib/dateutil/tzwin.py -> build/bdist.linux-x86_64/egg/dateutil\ncreating build/bdist.linux-x86_64/egg/dateutil/zoneinfo\ncopying build/lib/dateutil/zoneinfo/__init__.py -> build/bdist.linux-x86_64/egg/dateutil/zoneinfo\ncopying build/lib/dateutil/zoneinfo/zoneinfo--latest.tar.gz -> build/bdist.linux-x86_64/egg/dateutil/zoneinfo\ncopying build/lib/dateutil/parser.py -> build/bdist.linux-x86_64/egg/dateutil\ncopying build/lib/dateutil/tz.py -> build/bdist.linux-x86_64/egg/dateutil\ncopying build/lib/dateutil/rrule.py -> build/bdist.linux-x86_64/egg/dateutil\nbyte-compiling build/bdist.linux-x86_64/egg/dateutil/relativedelta.py to relativedelta.pyc\nbyte-compiling build/bdist.linux-x86_64/egg/dateutil/__init__.py to __init__.pyc\nbyte-compiling build/bdist.linux-x86_64/egg/dateutil/easter.py to easter.pyc\nbyte-compiling build/bdist.linux-x86_64/egg/dateutil/tzwin.py to tzwin.pyc\nbyte-compiling build/bdist.linux-x86_64/egg/dateutil/zoneinfo/__init__.py to __init__.pyc\nbyte-compiling build/bdist.linux-x86_64/egg/dateutil/parser.py to parser.pyc\nbyte-compiling build/bdist.linux-x86_64/egg/dateutil/tz.py to tz.pyc\nbyte-compiling build/bdist.linux-x86_64/egg/dateutil/rrule.py to rrule.pyc\ncreating build/bdist.linux-x86_64/egg/EGG-INFO\ncopying python_dateutil.egg-info/PKG-INFO -> build/bdist.linux-x86_64/egg/EGG-INFO\ncopying python_dateutil.egg-info/SOURCES.txt -> build/bdist.linux-x86_64/egg/EGG-INFO\ncopying python_dateutil.egg-info/dependency_links.txt -> build/bdist.linux-x86_64/egg/EGG-INFO\ncopying python_dateutil.egg-info/not-zip-safe -> build/bdist.linux-x86_64/egg/EGG-INFO\ncopying python_dateutil.egg-info/requires.txt -> build/bdist.linux-x86_64/egg/EGG-INFO\ncopying python_dateutil.egg-info/top_level.txt -> build/bdist.linux-x86_64/egg/EGG-INFO\ncreating dist\ncreating \'dist/python_dateutil-2.2-py2.7.egg\' and adding \'build/bdist.linux-x86_64/egg\' to it\nremoving \'build/bdist.linux-x86_64/egg\' (and everything under it)\nProcessing python_dateutil-2.2-py2.7.egg\ncreating /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/python_dateutil-2.2-py2.7.egg\nExtracting python_dateutil-2.2-py2.7.egg to /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages\nAdding python-dateutil 2.2 to easy-install.pth file\n\nInstalled /opt/eb/.local/easybuild/software/Python/2.7.6-goolf-1.4.10/lib/python2.7/site-packages/python_dateutil-2.2-py2.7.egg\nProcessing dependencies for python-dateutil==2.2\nSearching for six\nReading https://pypi.python.org/simple/six/\nDownload error on https://pypi.python.org/simple/six/: unknown url type: https -- Some packages may not be found!\nCouldn\'t find index page for \'six\' (maybe misspelled?)\nScanning index of all packages (this may take a while)\nReading https://pypi.python.org/simple/\nDownload error on https://pypi.python.org/simple/: unknown url type: https -- Some packages may not be found!\nNo local packages or download links found for six\nerror: Could not find suitable distribution for Requirement.parse(\'six\')\n'

GCC 4.5.4 build problem with Easybuild 1.11.0

GCC 4.5.4 does not appear bo build cleanly with Easybuild v1.10.0 or 1.11.0, it appears to fail is the sanity check.

== postprocessing...
== sanity checking...
ERROR: EasyBuild encountered an exception (at easybuild/1.11.0/lib/python2.7/site-packages/easybuild/framework/easyblock.py:2057 in build_and_install_software): autoBuild Failed (last 300 chars): EasyBuild crashed with an error (at easybuild/1.11.0/lib/python2.7/site-packages/easybuild/framework/easyblock.py:1661 in sanity_check_step): Sanity check failed: no file of ('libexec/gcc/x86_64-unknown-linux-gnu/4.5.4/liblto_plugin.so',) in /apps/local/easybuild/software/GCC/4.5.4

Thanks,
Cormac.

Global installation of tools?

I want use easybuild to provide the compiled programs for all users on the server, i.e. I need a global installation. Easybuild prevents me from installing the programs as root, which is necessary for this step. Unfortunately it does not address this issue in the manual or FAQ. What is your recommendation?

missing documentation regarding the upgrade process

It seems the official documentation doesn't mention the procedure for upgrading easy build itself. It would be nice to have a simple explanation how to move from one EB version to a new one, and whether there are any routine tasks required to maintain EB components and/or easyconfigs up to date.

Thanks!

Hidden dependency issue

(v 1.16.1)
When I use eb --force to install software with hidden dependencies easybuild does not find the hidden dependencies and installs them as non-hidden modules.

As an example, I have an easyconfig file util-wrapper-1.0.eb (appended at the bottom) that only contains hidden dependencies (zlib, ncurses, binutils) and installs nothing, using the Toolchain easyblock.

  • If I first install zlib, ncurses and binutils separately by hand using eb --hidden then run
    eb util-wrapper-1.0.eb, it installs util-wrapper-1.0.eb as desired finding the hidden dependencies.
  • If I do not first install the dependencies, Easybuild correctly installs them as hidden when I run eb util-wrapper-1.0.eb.
  • However if I then re-run the install with eb --force util-wrapper-1.0.eb, then Easybuild re-installs the dependencies as non-hidden modules so in the module directory for the dependencies I have both hidden and non-hidden modules pointing to the same install directory.

Example easyconfig file util-wrapper-1.0.eb:

easyblock = 'Toolchain'

name = 'util-wrapper'
version = '1.0' 
homepage = 'http://nopage'

description = "A simple wrapper for utilities needed by compilers. Nothing is installed, but it     ensures the dependencies are loaded and available."

toolchain = {'name': 'dummy', 'version': 'dummy'} 

dependencies = [
             ('zlib', '1.2.8'),
             ('binutils', '2.24'),
             ('ncurses', '5.9'),
             ]       


hiddendependencies = [
             ('zlib', '1.2.8'),
             ('binutils', '2.24'),
             ('ncurses', '5.9'),
             ]       


moduleclass = 'tools'

Installation Fails

Hello,

I am trying to bootstrap easybuild and it fails. I can't for the life of it figure out why. I suspect that there is a problem downloading the easybuild-framework-1.16.1.tar.gz because of our corporate proxy.

I have attached what I think (and hope) is useful. Interestingly enough the installation with pip works. (see end of the issue).
bootstrap_eb.py

$ python -V
Python 2.6.6
$ type module
module is a function
module ()
{
    eval `/usr/bin/modulecmd bash $*`
}
$ type -f module
-bash: type: module: not found
$ python bootstrap_eb.py $HOME/.local/easybuild
[[INFO]] Found module command 'modulecmd' (EnvironmentModulesC), so using it.
[[INFO]]

+++ STAGE 0: installing distribute via included (patched) distribute_setup.py...


Downloading http://pypi.python.org/packages/source/d/distribute/distribute-0.6.34.tar.gz
Extracting in /tmp/tmp1ObkZj
Now working in /tmp/tmp1ObkZj/distribute-0.6.34
Installing Distribute
[[INFO]]

+++ STAGE 1: installing EasyBuild in temporary dir with easy_install...


Installing with setuptools.setup...
Installing version 1.16.1
warning: install_lib: 'build/lib' does not exist -- no Python modules to install
zip_safe flag not set; analyzing archive contents...
Installing with setuptools.setup...
Installing version 1.16.1 (API version 1)
Installing with setuptools.setup...
Installing version 1.16.1 (required versions: API >= 1)
Installing with setuptools.setup...
Installing version 1.16.1.0 (required versions: API >= 1, easyblocks >= 1.16)
warning: install_lib: 'build/lib' does not exist -- no Python modules to install
[[INFO]]

+++ STAGE 2: installing EasyBuild in $HOME/.local/easybuild with EasyBuild from stage 1...


== temporary log file in case of crash /tmp/easybuild-GucYtD/easybuild-pwkEFT.log
== processing EasyBuild easyconfig /tmp/tmpj2OkV2/EasyBuild-1.16.1.eb
== building and installing EasyBuild/1.16.1...
== fetching files...
== creating build dir, resetting environment...
== unpacking...
== FAILED: Installation ended unsuccessfully (build directory: /tmp/tmpj2OkV2/EasyBuild/1.16.1/dummy-dummy): build failed (first 300 chars): EasyBuild crashed with an error (at easybuild/tools/run.py:382 in parse_cmd_output): cmd "tar xzf /tmp/tmpj2OkV2/sources/e/EasyBuild/easybuild-framework-1.16.1.tar.gz" exited with exitcode 2 and output:

gzip: stdin: unexpected end of file
tar: Child returned status 1
tar: Error is not recoverable:
== Results of the build can be found in the log file /tmp/easybuild-GucYtD/easybuild-EasyBuild-1.16.1-20150126.162203.bLPPh.log
Traceback (most recent call last):
  File "bootstrap_eb.py", line 584, in <module>
    main()
  File "bootstrap_eb.py", line 411, in main
    stage2(tmpdir, versions, install_path)
  File "bootstrap_eb.py", line 360, in stage2
    easybuild_main()
  File "/tmp/tmpj2OkV2/eb_stage1/lib/python2.6/site-packages/easybuild_framework-1.16.1-py2.6.egg/easybuild/main.py", line 305, in main
    ecs_with_res = build_and_install_software(ordered_ecs, init_session_state, exit_on_failure=exit_on_failure)
  File "/tmp/tmpj2OkV2/eb_stage1/lib/python2.6/site-packages/easybuild_framework-1.16.1-py2.6.egg/easybuild/main.py", line 138, in build_and_install_software
    _log.error(test_msg)
  File "/tmp/tmpj2OkV2/eb_stage1/lib/python2.6/site-packages/easybuild_framework-1.16.1-py2.6.egg/easybuild/tools/build_log.py", line 109, in error
    raise EasyBuildError(newMsg)
easybuild.tools.build_log.EasyBuildError: 'EasyBuild crashed with an error (at easybuild/main.py:138 in build_and_install_software): Build of /tmp/tmpj2OkV2/EasyBuild-1.16.1.eb failed (err: \'build failed (first 300 chars): EasyBuild crashed with an error (at easybuild/tools/run.py:382 in parse_cmd_output): cmd "tar xzf /tmp/tmpj2OkV2/sources/e/EasyBuild/easybuild-framework-1.16.1.tar.gz" exited with exitcode 2 and output:\\n\\ngzip: stdin: unexpected end of file\\ntar: Child returned status 1\\ntar: Error is not recoverable: \')'
$ file /tmp/tmpj2OkV2/sources/e/EasyBuild/easybuild-framework-1.16.1.tar.gz
/tmp/tmpj2OkV2/sources/e/EasyBuild/easybuild-framework-1.16.1.tar.gz: empty
$ curl --location -I http://pypi.python.org/packages/source/e/easybuild-framework/easybuild-framework-1.16.1.tar.gz
HTTP/1.1 301 Moved Permanently
Server: Varnish
Retry-After: 0
Location: https://pypi.python.org/packages/source/e/easybuild-framework/easybuild-framework-1.16.1.tar.gz
Accept-Ranges: bytes
Date: Mon, 26 Jan 2015 15:22:41 GMT
X-Served-By: cache-ams4145-AMS
X-Cache: MISS
X-Cache-Hits: 0
X-Timer: S1422285761.864839,VS0,VE0
Content-Length: 0
Via: 1.1 varnish, 1.1 proxy.example.invalid:3128 (Cisco-IronPort-WSA/7.5.2-303), 1.1 proxy.example.invalid:80 (Cisco-IronPort-WSA/7.5.2-303)
Connection: keep-alive
Proxy-Connection: keep-alive

HTTP/1.1 200 Connection established
Date: Mon, 26 Jan 2015 15:22:42 GMT
Via: 1.1 proxy.example.invalid:80 (Cisco-IronPort-WSA/7.5.2-303)
Connection: close
Proxy-Connection: close

HTTP/1.1 200 OK
Date: Mon, 26 Jan 2015 15:22:42 GMT
Server: nginx/1.6.2
Content-Type: application/octet-stream
X-PyPI-Last-Serial: 1354299
ETag: 65fc39572af03c3fb75d7dd45cb6c272
Cache-Control: max-age=31557600, public
Strict-Transport-Security: max-age=31536000; includeSubDomains
Public-Key-Pins: max-age=600; includeSubDomains; pin-sha256="WoiWRyIOVNa9ihaBciRSC7XHjliYS9VwUGOIud4PB18="; pin-sha256="5C8kvU039KouVrl52D0eZSGf4Onjo4Khs8tmyTlV3nU="; pin-sha256="5C8kvU039KouVrl52D0eZSGf4Onjo4Khs8tmyTlV3nU="; pin-sha256="lCppFqbkrlJ3EcVFAkeip0+44VaoJUymbnOaEUk7tEU="; pin-sha256="TUDnr0MEoJ3of7+YliBMBVFB4/gJsv5zO7IxD9+YoWI="; pin-sha256="x4QzPSC810K5/cMjb05Qm4k3Bw5zBn4lTdO/nEW/Td4=";
Via: 1.1 varnish
Content-Length: 1350742
Accept-Ranges: bytes
Via: 1.1 varnish
Age: 65862
X-Served-By: cache-iad2124-IAD, cache-ams4142-AMS
X-Cache: HIT, MISS
X-Cache-Hits: 1, 0
X-Timer: S1422285762.264909,VS0,VE496

Hacky Install with pip install -U --proxy="..." --install-option "--prefix=$HOME/EasyBuild" easybuild

After setting up PATH and PYTHONPATH the installation of eb Python-2.7.8-foss-2014b.eb --robot also fails:

$ echo $PYTHONPATH
/net/home/marcherm/EasyBuild/lib/python2.7/site-packages/
$ eb Python-2.7.8-foss-2014b.eb --robot
== temporary log file in case of crash /tmp/easybuild-o_MobI/easybuild-daWA9C.log
== resolving dependencies ...
== processing EasyBuild easyconfig /net/home/marcherm/EasyBuild/easybuild/easyconfigs/g/GCC/GCC-4.8.3.eb
== building and installing GCC/4.8.3...
== fetching files...
== creating build dir, resetting environment...
== unpacking...
== FAILED: Installation ended unsuccessfully (build directory: /net/home/marcherm/.local/easybuild/build/GCC/4.8.3/dummy-dummy): build failed (first 300 chars): EasyBuild crashed with an error (at easybuild/tools/run.py:382 in parse_cmd_output): cmd "tar xzf /net/home/marcherm/.local/easybuild/sources/g/GCC/gcc-4.8.3.tar.gz" exited with exitcode 2 and output:

gzip: stdin: unexpected end of file
tar: Unexpected EOF in archive
tar: Unexpected EOF in archive

== Results of the build can be found in the log file /tmp/easybuild-o_MobI/easybuild-GCC-4.8.3-20150126.164243.JXZPt.log
ERROR: EasyBuild crashed with an error (at easybuild/main.py:138 in build_and_install_software): Build of /net/home/marcherm/EasyBuild/easybuild/easyconfigs/g/GCC/GCC-4.8.3.eb failed (err: 'build failed (first 300 chars): EasyBuild crashed with an error (at easybuild/tools/run.py:382 in parse_cmd_output): cmd "tar xzf /net/home/marcherm/.local/easybuild/sources/g/GCC/gcc-4.8.3.tar.gz" exited with exitcode 2 and output:\n\ngzip: stdin: unexpected end of file\ntar: Unexpected EOF in archive\ntar: Unexpected EOF in archive\n')

OS Package dependencies use redhat syntax of -devel

Debian and derivatives (like ubuntu) use -dev for developer packages.

So for instance OpenMPI-1.6.4-GCC-4.7.2.eb mentiones:

osdependencies = ['libibverbs-devel']

Which fails. Not sure if it would be better to have per OS naming, or just build as much as possible in easybuild.

The short term fix is to chance the name to -dev, which of course will break redhat based OS.

Hmm, I just search all the eb files and I only found 8 unique -devel packages references.

Make Jenkins less verbose in sending notifications upon unit tests

Hi,

looking at the following jenkins report
https://jenkins1.ugent.be/job/easybuild-easyconfigs-pr-builder/379/console
I was able to infer that jenkins somehow looks at (a subset of) past commits, part of
/Users/fotis/uni.lu/easybuild-easyconfigs]$ git log|grep Author:|cut -d: -f2|sort -u,
and sends notifications to that subset.

I have not understood the conditions and exact specs but it is obvious that fi.
[email protected] should not be notified for all the other bits that don't relate to gromacs or gatk. My impression is, Jenkins current config makes it a bit too verbose. I can handle that, but others may be not and people have been wondering.

error when trying to use bootstrap_eb.py

python bootstrap_eb.py eb/

[[ERROR]] Could not find 'modulecmd', make sure it's available in your PATH. Output from modulecmd python help: sh: modulecmd: command not found

bootstrap fails on Ubuntu "trusty"

The bootstrap_eb.py script fails on Ubuntu "trusty" with both
python 3 and 2.7 installed, with the following error::

Installing version 1.16.1.0 (required versions: API >= 1, easyblocks >= 1.16)
warning: install_lib: 'build/lib.linux-x86_64-2.7' does not exist -- no Python modules to install

[[ERROR]] Stage 1 failed, could not determine EasyBuild version (txt: sh: 1: python: not found
).

The problem is that there is no /usr/bin/python: adding a symlink
solves it. However, the bootstrap should rather check for
/usr/bin/python2 first (since 3.x is not supported) and then
fall-back to /usr/bin/python.

eb --force -b -D builds instead of just doing a dry run

Hello,

I just found that when combining the following options the -D seems to have no effect:

$ eb pandas-0.12.0-goolf-1.4.10-Python-2.7.9.eb --pretend --robot ~/prod-easyconfigs --force -b -D
== temporary log file in case of crash /tmp/eb-Eo7wzL/easybuild-93TPUP.log
== resolving dependencies ...
== processing EasyBuild easyconfig /net/home/marcherm/work/pandas-0.12.0-goolf-1.4.10-Python-2.7.9.eb
== building and installing pandas/0.12.0-goolf-1.4.10-Python-2.7.9...
== fetching files...
== creating build dir, resetting environment...
== unpacking...
== patching...
== preparing...
== configuring...
== building...
...

EasyBuild 2.1

Current planning: release April 1st 2015

planned changes (more-or-less in order of preference, more changes not listed here can/will be included, only changes that are ready in time will be included):

framework:

easyblocks:

easyconfigs:

  • more easyconfigs for software already supported (version updates, other toolchains)
  • various easyconfigs for new software
  • easyconfig for building a couple of software packages with Cray toolchains, e.g.: CP2K, OpenFOAM, boost, HDF5, WRF, QuantumESPRESSO, NWChem, NAMD, GROMACS, GAMESS-US, Python, ...

postponed:

suse setuptools issue

As by the IRC talk.

Information for package python-setuptools:

Repository: SLE11-SDK-SP2-Media
Name: python-setuptools
Version: 0.6c8-10.19.2.1
Arch: x86_64
  • fails due to complaining about trailing / in $PYTHONPATH both with and without setuptools.
  • write test fails without setuptools.
  • with setuptools sanity check fails due to lib vs lib64 issue.
2.6/site-packages> ls easybuild_framework-1.8.2-py2.6.egg/
easybuild  EGG-INFO  test  vsc
fur> osm@hornbill:/opt/software/EasyBuild/1.8.2/lib64/python2.6/site-packages> ls easybuild_framework-1.8.2-py2.6.egg/easybuild/
easybuild_config.py  easybuild_config.pyc  framework  __init__.py  __init__.pyc  main.py  main.pyc  toolchains  tools

End of usse.

Start of RPM specfile issue with easyconfigs and relevant information to above issue.
Here is how i believe RPM queries for python paths:

# Useful python macros for determining python version and paths
#
%python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; import sys; sys.stdout.write(get_python_lib())")
%python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; import sys; sys.stdout.write(get_python_lib(1))")
%python_version %(%{__python} -c "import sys; sys.stdout.write(sys.version[:3])")

Is executed by the spec file:

python setup.py install --prefix=%{python_sitelib} --root=%{buildroot}

This i had to do because easyconfigs does not work otherwise.
It should be %{_prefix} or %_prefix so that you can do rpmbuild --prefix=/usr/local and have a relocateable package.
Which works for both easyblocks and easyconfigs.

document toolchainopts

Document toolchainopts (once --avail-toolchainopts is supported), mention that they don't make sense in combination with a dummy toolchain

Improve EasyBuild documentation, while moving it on ReadTheDocs

Ref. https://easybuild.readthedocs.org/en/latest/

20141103

  • add logo
  • move index.rst under ./docs
  • add a subdir ./docs/version-specific, with all related bits
  • add useful link: http://johnmacfarlane.net/pandoc/try/?text=%0A&from=markdown_github&to=rst
  • add useful link: http://rst.ninjs.org
  • use HPL as first example
  • Move section on --try-* features, in favor of Commonly Used command line options, yet not the WRF example
  • Consider using google analytics; update: yes, wanted
  • add in section to landing page (from gh-pages) + HUST'14 ref

20141104

  • set up auto-triggering rebuild on push, on RTD
  • get rid of stale pages (either at fgeorgatos repo or wherever)
  • update homepage; gh-pages
  • review documentation in PDF form
  • mention conference calls @ hangouts
  • Fix sidebar TOC level; this is clearly dependent on the theme: default fixes it
  • Reference to primary software URL (homepage)!
  • update README
  • cleanup wiki

post-assignment pending tasks, for improvements to documentation are now visible over here:
#148

Failure to build when 'modules' is loaded

I am encountering a build failure in the following situation. I have built Modules from source, and installed it outside of the system PATH. In order to avoid having to set PATH, MANPATH, ..., manually, I just 'bootstrap' Modules by calling "module load modules" in my .bashrc. However, this makes EasyBuild fail. I have created a small script that reproduces the issue on my machine:

!/bin/bash -x

export MODULEPATH=/usr/local/Modules/3.2.10/modulefiles:$MODULEPATH
export PATH=/usr/local/Modules/3.2.10/bin:$HOME/.local/bin:$PATH
source /usr/local/Modules/3.2.10/init/bash
rm -rf ~/opt/easybuild

module load modules # build fails when uncommented

eb ~/tmp/gzip.eb

When that commented-out line is uncommented, the build fails with the following output:

== temporary log file in case of crash /tmp/easybuild-kmCrUk.log
== resolving dependencies ...
== processing EasyBuild easyconfig /home/ebaudrez/tmp/gzip.eb
== building and installing gzip-1.4...
== fetching files...
== creating build dir, resetting environment...
== unpacking...
== patching...
== preparing...
== configuring...
== building...
== testing...
== installing...
== taking care of extensions...
== packaging...
== postprocessing...
== sanity checking...
Traceback (most recent call last):
File "/home/ebaudrez/.local/lib/python2.7/site-packages/easybuild_framework-1.7.0-py2.7.egg/easybuild/main.py", line 1318, in
main()
File "/home/ebaudrez/.local/lib/python2.7/site-packages/easybuild_framework-1.7.0-py2.7.egg/easybuild/main.py", line 327, in main
(success, _) = build_and_install_software(spec, options, origEnviron, silent=testing)
File "/home/ebaudrez/.local/lib/python2.7/site-packages/easybuild_framework-1.7.0-py2.7.egg/easybuild/main.py", line 829, in build_and_install_software
regtest_online=options.regtest_online)
File "/home/ebaudrez/.local/lib/python2.7/site-packages/easybuild_framework-1.7.0-py2.7.egg/easybuild/framework/easyblock.py", line 1744, in run_all_steps
self.run_step(stop_name, step_methods, skippable=skippable)
File "/home/ebaudrez/.local/lib/python2.7/site-packages/easybuild_framework-1.7.0-py2.7.egg/easybuild/framework/easyblock.py", line 1627, in run_step
m(self)
File "/home/ebaudrez/.local/lib/python2.7/site-packages/easybuild_framework-1.7.0-py2.7.egg/easybuild/framework/easyblock.py", line 1712, in
('sanitycheck', 'sanity checking', [lambda x: x.sanity_check_step()], False),
File "/home/ebaudrez/.local/lib/python2.7/site-packages/easybuild_framework-1.7.0-py2.7.egg/easybuild/framework/easyblock.py", line 1475, in sanity_check_step
fake_mod_data = self.load_fake_module(purge=True)
File "/home/ebaudrez/.local/lib/python2.7/site-packages/easybuild_framework-1.7.0-py2.7.egg/easybuild/framework/easyblock.py", line 816, in load_fake_module
self.load_module(mod_paths=mod_paths, purge=purge)
File "/home/ebaudrez/.local/lib/python2.7/site-packages/easybuild_framework-1.7.0-py2.7.egg/easybuild/framework/easyblock.py", line 797, in load_module
m.add_module([[self.name, self.get_installversion()]])
File "/home/ebaudrez/.local/lib/python2.7/site-packages/easybuild_framework-1.7.0-py2.7.egg/easybuild/tools/modules.py", line 185, in add_module
mods = self.available(name, version)
File "/home/ebaudrez/.local/lib/python2.7/site-packages/easybuild_framework-1.7.0-py2.7.egg/easybuild/tools/modules.py", line 144, in available
modules = self.run_module('avail', txt, mod_paths=mod_paths)
File "/home/ebaudrez/.local/lib/python2.7/site-packages/easybuild_framework-1.7.0-py2.7.egg/easybuild/tools/modules.py", line 268, in run_module
proc = subprocess.Popen([self.cmd, 'python'] + args, stdout=PIPE, stderr=PIPE, env=environ)
File "/usr/lib64/python2.7/subprocess.py", line 679, in init
errread, errwrite)
File "/usr/lib64/python2.7/subprocess.py", line 1228, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory

I've got virtually zero Python knowledge, so I couldn't debug. I did try to troubleshoot this problem, however, and I found the following:

  1. The ENOENT arises because of failure to find 'modulecmd' (called in modules.py line 265 actually, because I did add some print statements)
  2. The constructor of EnvironmentModulesC does not fail, so 'modulecmd' is in PATH by the time the constructor is called
  3. What I think is happening, is that EasyBuild does 'module purge' (easyblock.py line 795) before calling 'modulecmd python avail' (modules.py line 144). In my case, this removes the entry for Modules in PATH, rendering 'modulecmd' inaccessible.

I can give you more details and full output, of course, but I wasn't sure pasting them here was a good idea (this post is already way too long!). So if you wish to dig into this issue, let me know how you wish to proceed.

Best regards

Error: FileRepository is not defined

I tried to install easybuild on my system, but when I try to configure it, I get the error:
NameError: name 'FileRepository' is not defined

These are the steps I followed:
easy_install --user easybuild

(installs version 1.3.0-r5df6a34e9d73ed17847f1e2c909425f5299a716f (framework: 1.3.0-r5df6a34e9d73ed17847f1e2c909425f5299a716f, easyblocks: 1.3.0-r5df6a34e9d73ed17847f1e2c909425f5299a716f))

I added .local/bin to my PATH

Executing 'eb' gives me the help info.

Then I tried to configure it, with an example.eb I've attached below.

'eb example.eb'

But I get the above mentioned error. Am I doing something wrong ?

Thx.

example.eb:
import os

home = os.getenv('HOME')

build_path = "/tmp/easybuild"
install_path = home
source_path = os.path.join(home, "sources")

repository_path = os.path.join(home, "ebfiles")
repository = FileRepository(repository_path)

log_format = ("easybuildlogs", "%(name)s-%(version)s.log")

module_classes = ['base', 'bio', 'chem', 'compiler', 'lib', 'phys', 'tools']

Easybuild can (in practice) not be used without root privileges

In principle, one can use Easybuild without root privileges but as soon as one installs a toolchain that includes GCC, OS dependencies like libibverbs-devel and openssl-devel spoil the fun. In the few use cases I had, the first one was not installed. It is fairly simple to build libibverbs manually. There are even easyconfigs for libibverbs. However, Easybuild does not detect such manual installs, e.g. by testing if file libibverbs.so is properly installed with ld. Instead, Easybuild tries to use rpm, dpkg, or which (as a fallback) but none of these seem to be adequate.

Support for easybuild paths outside of the easybuild prefix.

It would be great to have an officially sanctioned method for specifying locations for various easybuild locations to reside outside of the EASYBUILD_PREFIX, namely:

  • EASYBUILD_SUBDIR_SOFTWARE
  • EASYBUILD_SUBDIR_MODULES

It seems that absolute paths can be provided right now, but that's an unintended result. It would be nice to have this officially supported and preserved for the future.

Use case: ability to manage multiple instances of easybuild on shared storage. By collecting the easyconfig files generated by easybuild in /some/REPO_NAME/, it's then easy to have them tracked in a single git repository (for all of your clusters). Same thing goes for the custom input easyconfigs, say ones used to override or augment the ones provided by easybuild. Then the resulting software could be placed in /some/software/. In fact, this allows one to completely forgo the use of EASYBUILD_PREFIX.

Not sure what would be the best method for accomplishing that. In a way, it would be nice to follow a standard convention and have these environment variables use the suffix 'PATH'; however, just leaving them the way they are right now would be sufficient.

document style w.r.t. messages in pull requests

We need to document the way in which pull request messages should be formatted, such that we can rely on that the auto-generate release notes on a next release.

Now, the only way to obtain proper release notes is to scroll through weeks/months of git log messages, and manually compose decent release notes from them.

Merge in diffs of 3rd hackathon notes, very difficult on github to do this...

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.