[Users] ET_2014_05 fails to build on Linux Mint 17

Ian Hinder ian.hinder at aei.mpg.de
Thu Jun 26 05:22:50 CDT 2014

On 26 Jun 2014, at 11:56, Dumsani Ndzinisa <g14n8326 at campus.ru.ac.za> wrote:

> Hi everyone,
> I have a fresh checkout of the latest stable release of the Einstein Toolkit
> (ET_2014_05) which I'm trying to build on my laptop. The laptop is
> running on Linux Mint 17, and I have adapted configuration options from
> the bundled "ubuntu.cfg" file. On my machine, I have gcc version 4.8.2,
> g++ version 4.8.2, and gfortran 4.8.2 as well.
> However, when building the toolkit (using the thornlist "einsteintoolkit.th)
> the build always fails no matter what I try. For instance, on my very first
> attempt, I didn't use any of my locally installed libraries but opted 
> for the
> ones bundled with the toolkit. There was one error message in that case
> pointing to the PAPI library having failed to get configured. I then decided
> to comment out this thorn from the thornlist (in the .th file). From there
> on, still building with the bundled external libraries, I have been 
> persistently
> getting an error message (in the linking stage) to the effect a certain
> library (lnuma) could not be found. Below is the error message that gets
> returned onto the screen:
> /usr/bin/ld: cannot find -lnuma
> collect2: error: ld returned 1 exit status
> /home/dumsani/Cactus/lib/make/make.configuration:147: recipe for target 
> '/home/dumsani/Cactus/exe/cactus_test-ET6' failed
> make[1]: *** [/home/dumsani/Cactus/exe/cactus_test-ET6] Error 1
> Makefile:254: recipe for target 'test-ET6' failed
> make: *** [test-ET6] Error 2
> I would appreciate if anyone with some idea came to my rescue here.
> Cactus and the ET are still very new to me. I've been stuck on this for
> almost a week now. And I am of the idea that it shouldn't be taking me
> that long. Together with my advisor, we have made a checkout of Cactus
> (Llama thornlist) earlier and he did oriente me to the process until we
> had a successful build (we got the executable) for the llama thornlist. So,
> now the idea is for me to get some more practice with Cactus/ET by
> checking out the full toolkit, configuring, building and then running some
> example simulations provided in the toolkit.


Can you try commenting out the thorn "hwloc" from your thornlist?  Grepping through the source for "numa", the only use of this library seems to be hwloc.  hwloc is a thorn which assists in binding software threads to physical computational cores and processes to processor sockets for efficiency, but it is not necessary for the toolkit to run.

There might be something wrong with the hwloc configure script (Cactus/arrangements/ExternalLibraries/hwloc/configure.sh).  The relevant lines appear to be

> # Add libnuma manually, if necessary
> if grep -q '[-]lnuma' ${HWLOC_LIB_DIR}/libhwloc.la 2>/dev/null; then
>     if ! echo '' ${HWLOC_LIBS} '' | grep -q ' numa '; then
>         HWLOC_LIBS="${HWLOC_LIBS} numa"
>     fi
> fi

This seems to be attempting to add the numa library to the link line if it is found in libhwloc.la.  The error message indicates that numa has been added to the link line, but the library is not available on the link path.  

The most recent change to hwloc, in April (i.e. before the release), is:

"Correct detecting whether -lnuma is necessary" (http://git.barrywardell.net/?p=arrangements/ExternalLibraries/hwloc.git;a=commitdiff;h=4a3b694661f69df842c12a1e188e42f546dd92e2)
author	eschnett <eschnett at 152c557c-6d84-4bc7-9b1a-dfca721279c7>	
Sat, 19 Apr 2014 23:07:32 +0200 (21:07 +0000)
committer	eschnett <eschnett at 152c557c-6d84-4bc7-9b1a-dfca721279c7>	
Sat, 19 Apr 2014 23:07:32 +0200 (21:07 +0000)

Probably Erik has some insight into this.

We have an automated build and test process running under Ubuntu 12.04, and this is working fine.  It also builds hwloc from source, rather than relying on the Ubuntu version.  Do you happen to have hwloc installed?  Maybe it is conflicting with the self-built version?

	dpkg -l hwloc

We should probably upgrade the build and test system to Ubuntu 14.04, as that is now the latest stable release.  Maybe something in Ubuntu has changed with the hwloc library.

Ian Hinder

More information about the Users mailing list