Hi
First of all - try disabling the hwloc thorn. You don't necessarily need it. It might not be the best solution, but the fastest for now.
On Thu, Jun 26, 2014 at 12:22:50PM +0200, Ian Hinder wrote:
# Add libnuma manually, if necessary if grep -q '[-]lnuma' ${HWLOC_LIB_DIR}/libhwloc.la 2>/dev/null; then
This only greps ${HWLOC_LIB_DIR}/libhwloc.la which might not be present. I am not sure about your distribution, but Debian doesn't ship with this file at all, which should make the above test always fail. While this doesn't seem right, it shouldn't cause the problem you describe.
What I could imagine is that this test triggers for you, and you do have libnuma installed, but not libnuma-dev. This would mean libhwloc seems to (?) need linkage against libnuma, that is also installed, but the relevant development files are not. In that case, either the test is wrong (no explicit linkage to libnuma would in fact be required), or you need to install the development files for libnuma (likely the libnuma-dev package).
It would be good to know a couple of things about your installation, in particular the following (with results shown for my Debian workstation):
HWLOC_DIR=/usr/lib/x86_64-linux-gnu
$ pkg-config hwloc --static --libs -lhwloc -lxml2 -lz -lm -lpci
(Note that numa is missing here, but the shared library in fact requires it. This works because libnuma is installed in a standard location. Adding -lnuma to the link line would probably make linking fail, since I don't have libnuma.so installed - while of couse libnuma.so.1 is.)
ls $HWLOC_DIR/libhwloc.* /usr/lib/x86_64-linux-gnu/libhwloc.a /usr/lib/x86_64-linux-gnu/libhwloc.so.3 /usr/lib/x86_64-linux-gnu/libhwloc.so /usr/lib/x86_64-linux-gnu/libhwloc.so.4 /usr/lib/x86_64-linux-gnu/libhwloc.so.0 /usr/lib/x86_64-linux-gnu/libhwloc.so.5 /usr/lib/x86_64-linux-gnu/libhwloc.so.1 /usr/lib/x86_64-linux-gnu/libhwloc.so.5.0.1 /usr/lib/x86_64-linux-gnu/libhwloc.so.2
$ ldd $HWLOC_DIR/libhwloc.so | grep numa libnuma.so.1 => /usr/lib/libnuma.so.1 (0x00007fd82c17d000)
$ nm $HWLOC_DIR/libhwloc.a | grep -i numa
$ nm -D $HWLOC_DIR/libhwloc.so | grep -i numa
$ ls /usr/lib/libnuma.* /usr/lib/libnuma.so.1
$ dpkg -l '*libhwloc*' Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) ||/ Name Version Architecture Description +++-===================-==============-==============-=========================================== ii libhwloc-dev 1.4.1-4 amd64 Hierarchical view of the machine - static l un libhwloc0 <none> (no description available) un libhwloc1 <none> (no description available) un libhwloc2 <none> (no description available) un libhwloc3 <none> (no description available) un libhwloc4 <none> (no description available) ii libhwloc5:amd64 1.4.1-4 amd64 Hierarchical view of the machine - shared l
$ dpkg -l '*libnuma*' Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) ||/ Name Version Architecture Description +++-===================-==============-==============-=========================================== ii libnuma1 2.0.8~rc4-1 amd64 Libraries for controlling NUMA policy
Frank