Hi Ian,
Ah I'm sorry I didn't realize that my replying wasn't directed to the group. I guess this all has to do with me being very on almost everything here! I will append my previous response here.
Many thanks to you!!! Commenting out hwloc from the thornlist has done the trick. My ET has compiled successfully now. Being the newbie that I am, please do expect me to get back again and bother you will plenty of elementary questions.
Thanks again.
My previous response which was communicated off the group...here.......
Hi Ian,
Yes, I do have a local installation of the hwloc library. And I think you've really hit the nail on the head in your diagnosis. When I went through the make file, and also looked at the error message my understanding was that Cactus is trying to bring in numa when linking, and it looks for it in the wrong place. Running the command dpkg --get-selections | grep hwloc, this is the output I get: hwloc-nox install libhwloc-dev:amd64 install libhwloc5:amd64 install
I'll implement the suggestions you gave to me, try to build again and get back here with some feedback.
On 26/06/2014 12:53, Ian Hinder wrote:
On 26 Jun 2014, at 12:51, Dumsani Ndzinisa <g14n8326@campus.ru.ac.za mailto:g14n8326@campus.ru.ac.za> wrote:
Hi Ian,
Yes, I do have a local installation of the hwloc library. And I think you've really hit the nail on the head in your diagnosis. When I went through the make file, and also looked at the error message my understanding was that Cactus is trying to bring in numa when linking, and it looks for it in the wrong place. Running the command dpkg --get-selections | grep hwloc, this is the output I get: hwloc-nox install libhwloc-dev:amd64 install libhwloc5:amd64 install
I'll implement the suggestions you gave to me, try to build again and get back here with some feedback.
Hi Dumsani,
Glad to be of help! By the way, you replied just to me, not to the mailing list.
On 26/06/2014 12:22, Ian Hinder wrote:
On 26 Jun 2014, at 11:56, Dumsani Ndzinisa <g14n8326@campus.ru.ac.za mailto:g14n8326@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 http://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.
Hi,
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=co...) authoreschnett eschnett@152c557c-6d84-4bc7-9b1a-dfca721279c7 Sat, 19 Apr 2014 23:07:32 +0200 (21:07 +0000) committereschnett eschnett@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 http://numrel.aei.mpg.de/people/hinder