Hello all,
        I wanted to have a look at but hit a small snag the final link ended 
with:
libtool: link: gcc -std=gnu99 -g -O2 -o .libs/lstopo lstopo-lstopo.o 
lstopo-lstopo-color.o lstopo-lstopo-text.o lstopo-lstopo-draw.o 
lstopo-lstopo-fig.o lstopo-lstopo-cairo.o lstopo-lstopo-xml.o  
-L/home/OpenHPC/hwloc/src/hwloc/trunk/src -lm ../src/.libs/libhwloc.so 
-Wl,-rpath -Wl,/home/OpenHPC/hwloc/build/lib
../src/.libs/libhwloc.so: undefined reference to `hwloc_hwloc_strncasecmp'
collect2: ld returned 1 exit status


I'm using a fresh svn checkout, svn info shows:
---
Path: .
URL: http://svn.open-mpi.org/svn/hwloc
Repository Root: http://svn.open-mpi.org/svn/hwloc
Repository UUID: 4b44e086-7f34-40ce-a3bd-00e031736276
Revision: 1090
Node Kind: directory
Schedule: normal
Last Changed Author: sthibaul
Last Changed Rev: 1090
Last Changed Date: 2009-10-02 04:32:28 +1000 (Fri, 02 Oct 2009)
---

and after runnign autogen.sh I build with:
./configure --prefix /home/OpenHPC/hwloc/build ; make ; make install

I suspect that somehow there is one to many "hwloc_" prefixes on that function 
call?

A svn an and svn log thinks that this revision is the cause:

[tony@thor trunk]$ svn log -r 1090 -v
------------------------------------------------------------------------
r1090 | sthibaul | 2009-10-02 04:32:28 +1000 (Fri, 02 Oct 2009) | 1 line
Changed paths:
   M /trunk/README
   M /trunk/configure.ac
   M /trunk/doc/Makefile.am
   M /trunk/include/hwloc/cpuset-bits.h
   M /trunk/include/hwloc/cpuset.h
   M /trunk/include/hwloc/glibc-sched.h
   M /trunk/include/hwloc/helper.h
   M /trunk/include/hwloc/linux-libnuma.h
   M /trunk/include/hwloc.h
   M /trunk/include/private/private.h
   M /trunk/src/bind.c
   M /trunk/src/topology-hpux.c
   M /trunk/src/topology-synthetic.c
   M /trunk/src/topology.c
   M /trunk/utils/hwloc-mask.h

hp-ux compiler fixes
------------------------------------------------------------------------

This quick hack fixes it for me, but I don't know if it will work with hp-ux
compilers.

Index: trunk/src/topology-synthetic.c
===================================================================
--- trunk/src/topology-synthetic.c      (revision 1090)
+++ trunk/src/topology-synthetic.c      (working copy)
@@ -37,19 +37,19 @@
       break;

     if (*pos < '0' || *pos > '9') {
-      if (!hwloc_hwloc_strncasecmp(pos, "machines", 2))
+      if (!hwloc_strncasecmp(pos, "machines", 2))
        type = HWLOC_OBJ_MACHINE;
-      else if (!hwloc_hwloc_strncasecmp(pos, "nodes", 1))
+      else if (!hwloc_strncasecmp(pos, "nodes", 1))
        type = HWLOC_OBJ_NODE;
-      else if (!hwloc_hwloc_strncasecmp(pos, "sockets", 1))
+      else if (!hwloc_strncasecmp(pos, "sockets", 1))
        type = HWLOC_OBJ_SOCKET;
-      else if (!hwloc_hwloc_strncasecmp(pos, "cores", 2))
+      else if (!hwloc_strncasecmp(pos, "cores", 2))
        type = HWLOC_OBJ_CORE;
-      else if (!hwloc_hwloc_strncasecmp(pos, "caches", 2))
+      else if (!hwloc_strncasecmp(pos, "caches", 2))
        type = HWLOC_OBJ_CACHE;
-      else if (!hwloc_hwloc_strncasecmp(pos, "procs", 1))
+      else if (!hwloc_strncasecmp(pos, "procs", 1))
        type = HWLOC_OBJ_PROC;
-      else if (!hwloc_hwloc_strncasecmp(pos, "misc", 2))
+      else if (!hwloc_strncasecmp(pos, "misc", 2))
        type = HWLOC_OBJ_MISC;

       next_pos = strchr(pos, ':');


Yours Tony

Reply via email to