easybuilders / easybuild-easyconfigs

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

OpenBabel 2.3.2-GCC-5.2.0-Python-2.7.12 #3774

Closed shahzebsiddiqui closed 7 years ago

shahzebsiddiqui commented 7 years ago

I can't build OpenBabel with GCC 5.2.0 and Python. I have attached the log and my eb files. Can you please fix this issue.

[hpcswadm@hpcv18 easybuild]$ eb OpenBabel-2.3.2-GCC-5.2.0-Python-2.7.12.eb 
== temporary log file in case of crash /hpc/grid/scratch/tmp/eb-dvyNUL/easybuild-pPX0Cr.log
== processing EasyBuild easyconfig /hpc/hpcswadm/easybuild/OpenBabel-2.3.2-GCC-5.2.0-Python-2.7.12.eb
== building and installing OpenBabel/2.3.2-GCC-5.2.0-Python-2.7.12...
== fetching files...
== creating build dir, resetting environment...
== unpacking...
== patching...
== preparing...
== configuring...
== building...
== FAILED: Installation ended unsuccessfully (build directory: /nfs/grid/software/RHEL7-BUILD/easybuild/build/OpenBabel/2.3.2/GCC-5.2.0-Python-2.7.12): build failed (first 300 chars): cmd " make -j 8 " exited with exitcode 2 and output:
/usr/bin/cmake -H/nfs/grid/software/RHEL7-BUILD/easybuild/build/OpenBabel/2.3.2/GCC-5.2.0-Python-2.7.12/openbabel-2.3.2 -B/nfs/grid/software/RHEL7-BUILD/easybuild/build/OpenBabel/2.3.2/GCC-5.2.0-Python-2.7.12/easybuild_obj --check-build-system CMa
== Results of the build can be found in the log file(s) /hpc/grid/scratch/tmp/eb-dvyNUL/easybuild-OpenBabel-2.3.2-20161110.092211.OXkiJ.log
ERROR: Build of /hpc/hpcswadm/easybuild/OpenBabel-2.3.2-GCC-5.2.0-Python-2.7.12.eb failed (err: 'build failed (first 300 chars): cmd " make -j 8 " exited with exitcode 2 and output:\n/usr/bin/cmake -H/nfs/grid/software/RHEL7-BUILD/easybuild/build/OpenBabel/2.3.2/GCC-5.2.0-Python-2.7.12/openbabel-2.3.2 -B/nfs/grid/software/RHEL7-BUILD/easybuild/build/OpenBabel/2.3.2/GCC-5.2.0-Python-2.7.12/easybuild_obj --check-build-system CMa')
boegel commented 7 years ago

@shahzebsiddiqui this easyconfig file is not included with EasyBuild, so can you share the easyconfig file you used so we can try and reproduce the problem?

Can you take a look at the build log and see whether you can figure out the actual error?

shahzebsiddiqui commented 7 years ago

I believe there is a OpenBabel from Easybuild at https://github.com/hpcugent/easybuild-easyconfigs/tree/master/easybuild/easyconfigs/o/OpenBabel

I got it from here and I am rebuilding with GCC -5.2.0 and Python 2.7.12. I have attached my log and GCC and Python Easybuild files as well.

OpenBabel-2.3.2-GCC-5.2.0-Python-2.7.12.zip

boegel commented 7 years ago

@shahzebsiddiqui I think the problem is that OpenBabel 2.3.2 is not compatible with GCC 5.x:

/nfs/grid/software/RHEL7-BUILD/easybuild/build/OpenBabel/2.3.2/GCC-5.2.0-Python-2.7.12/openbabel-2.3.2/include/openbabel/shared_ptr.h:27:14: error: ‘std::tr1’ has not been declared
   using std::tr1::shared_ptr;

Two options:

shahzebsiddiqui commented 7 years ago

I don't know how to fix the issue. It seems like there is an issue fetching the tarball for version 2.4.0 and 2.4.1. I verified the installer files do reside in sourceforge at https://sourceforge.net/projects/openbabel/files/openbabel/ but it doesn't work.

There is a dependency for Eigen and Python which I built with GCC 5.2.0 so I had to build this with same version. Anyhow I uncommented the dependency for the sake of building and used the dummy toolchain. For RHEL7 it is gcc 4.8.5

[hpcswadm@hpcv18 easybuild]$ eb OpenBabel-2.4.0-GCC-5.2.0-Python-2.7.12.eb == temporary log file in case of crash /hpc/grid/scratch/tmp/eb-1D6R_v/easybuild-8l1YUP.log == processing EasyBuild easyconfig /hpc/hpcswadm/easybuild/OpenBabel-2.4.0-GCC-5.2.0-Python-2.7.12.eb == building and installing OpenBabel/2.4.0-GCC-5.2.0-Python-2.7.12... == fetching files... == FAILED: Installation ended unsuccessfully (build directory: /nfs/grid/software/RHEL7-BUILD/easybuild/build/OpenBabel/2.4.0/GCC-5.2.0-Python-2.7.12): build failed (first 300 chars): Couldn't find file openbabel-2.4.0.tar.gz anywhere, and downloading it didn't work either... Paths attempted (in order): /hpc/hpcswadm/easybuild/o/OpenBabel/openbabel-2.4.0.tar.gz, /hpc/hpcswadm/easybuild/OpenBabel/openbabel-2.4.0.tar.gz, /hpc/hpcswadm/easybuild/openbabel-2.4.0.tar.gz, /nfs/grid/sof == Results of the build can be found in the log file(s) /hpc/grid/scratch/tmp/eb-1D6R_v/easybuild-OpenBabel-2.4.0-20161121.084013.uQUZR.log ERROR: Build of /hpc/hpcswadm/easybuild/OpenBabel-2.4.0-GCC-5.2.0-Python-2.7.12.eb failed (err: "build failed (first 300 chars): Couldn't find file openbabel-2.4.0.tar.gz anywhere, and downloading it didn't work either... Paths attempted (in order): /hpc/hpcswadm/easybuild/o/OpenBabel/openbabel-2.4.0.tar.gz, /hpc/hpcswadm/easybuild/OpenBabel/openbabel-2.4.0.tar.gz, /hpc/hpcswadm/easybuild/openbabel-2.4.0.tar.gz, /nfs/grid/sof")

[hpcswadm@hpcv18 easybuild]$ eb OpenBabel-2.4.1-GCC-5.2.0-Python-2.7.12.eb == temporary log file in case of crash /hpc/grid/scratch/tmp/eb-fQlhTv/easybuild-xp6785.log == processing EasyBuild easyconfig /hpc/hpcswadm/easybuild/OpenBabel-2.4.1-GCC-5.2.0-Python-2.7.12.eb == building and installing OpenBabel/2.4.1-GCC-5.2.0-Python-2.7.12... == fetching files... == FAILED: Installation ended unsuccessfully (build directory: /nfs/grid/software/RHEL7-BUILD/easybuild/build/OpenBabel/2.4.1/GCC-5.2.0-Python-2.7.12): build failed (first 300 chars): Couldn't find file OpenBabel-2.4.1-fix-link-path-tests.patch anywhere, and downloading it didn't work either... Paths attempted (in order): /hpc/hpcswadm/easybuild/o/OpenBabel/OpenBabel-2.4.1-fix-link-path-tests.patch, /hpc/hpcswadm/easybuild/OpenBabel/OpenBabel-2.4.1-fix-link-path-tests.patch, /hpc == Results of the build can be found in the log file(s) /hpc/grid/scratch/tmp/eb-fQlhTv/easybuild-OpenBabel-2.4.1-20161121.084409.bFcul.log ERROR: Build of /hpc/hpcswadm/easybuild/OpenBabel-2.4.1-GCC-5.2.0-Python-2.7.12.eb failed (err: "build failed (first 300 chars): Couldn't find file OpenBabel-2.4.1-fix-link-path-tests.patch anywhere, and downloading it didn't work either... Paths attempted (in order): /hpc/hpcswadm/easybuild/o/OpenBabel/OpenBabel-2.4.1-fix-link-path-tests.patch, /hpc/hpcswadm/easybuild/OpenBabel/OpenBabel-2.4.1-fix-link-path-tests.patch, /hpc")

[hpcswadm@hpcv18 easybuild]$ eb OpenBabel-2.4.1.eb == temporary log file in case of crash /hpc/grid/scratch/tmp/eb-To7ZIL/easybuild-XiAV1Z.log == processing EasyBuild easyconfig /hpc/hpcswadm/easybuild/OpenBabel-2.4.1.eb == building and installing OpenBabel/2.4.1... == fetching files... == creating build dir, resetting environment... == unpacking... == patching... == preparing... == configuring... == building... == testing... == installing... == taking care of extensions... == postprocessing... == sanity checking... == cleaning up... == creating module... == permissions... == packaging... == COMPLETED: Installation ended successfully == Results of the build can be found in the log file(s) /nfs/grid/software/RHEL7/easybuild/software/OpenBabel/2.4.1/easybuild/easybuild-OpenBabel-2.4.1-20161121.085025.log == Build succeeded for 1 out of 1 == Temporary log file(s) /hpc/grid/scratch/tmp/eb-To7ZIL/easybuild-XiAV1Z.log* have been removed. == Temporary directory /hpc/grid/scratch/tmp/eb-To7ZIL has been removed.

This is what I used for my eb file. Please take a look at this and try to make this as part of the new release

[hpcswadm@hpcv18 easybuild]$ cat OpenBabel-2.4.1.eb name = 'OpenBabel' version = '2.4.1'

versionsuffix = '-Python-%(pyver)s'

homepage = 'http://openbabel.org' description = """Open Babel is a chemical toolbox designed to speak the many languages of chemical data. It's an open, collaborative project allowing anyone to search, convert, analyze, or store data from molecular modeling, chemistry, solid-state materials, biochemistry, or related areas."""

toolchain = {'name': 'dummy', 'version': ''} toolchainopts = {'strict': True}

source_urls = [SOURCEFORGE_SOURCE] sources = [SOURCELOWER_TAR_GZ]

patches = [

'OpenBabel-%(version)s-fix-link-path-tests.patch',

'OpenBabel-%(version)s-ignore-failed-test.patch',

'OpenBabel-%(version)s-ignore-rotor-test.patch',

]

dependencies = [

('Python', '2.7.12'),

('Eigen', '3.2.8'),

]

osdependencies = [('libxml2','cmake','zlib')]

runtest = 'test'

moduleclass = 'chem'

shahzebsiddiqui commented 7 years ago

I would recommend allowing eb extension for attachment. I had to attach this as a text file.

OpenBabel-2.4.1.txt