Open MPI logo

Hardware Locality Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Hardware Locality Development mailing list

Subject: [hwloc-devel] Bug-Report: visibility=hiden on Sparc/Sun CC
From: Igor Galić (i.galic_at_[hidden])
Date: 2011-09-04 12:26:38

Hi folks,

first off: I would've submitted this Bug report via Trac if I could have
done it anonymously. I *tried* to register, but the captcha was impossible
to decipher -- And I can see! I strongly suggest you replace this with
reCaptcha. It has an option to reload the captcha, and an audio option.
Also: A complete reset of the form after a wrong attempt at the captcha
makes for terrible user experience.

These are things that will prevent you from getting bug reports.

Now, for the "bug":
I tried packaging hwloc for OpenCSW, building it with the default compiler
which is Solaris Studio 12.2.
I noticed a lot of errors of the kind:

  cc: Warning: illegal option -fvisibility=hidden

So I canceled the compile and "fixed" that error with a simple

  perl -pi -e "s_at_-fvisibility=hidden_at_-xldscope=hidden_at_g"

This worked out fine on amd64 and i386, but failed for sparc during
a linking phase:

    CC lstopo-lstopo-xml.o
    CCLD lstopo
  Undefined first referenced
   symbol in file
  hwloc_insert_object_by_cpuset lstopo-lstopo-draw.o
  ld: fatal: Symbol referencing errors. No output written to .libs/lstopo

I suspected this to be an issue of library ordering in the linking phase,
something that GCC handles automatically by trying out different
permutations. Testing it with GCC confirmed my hypothesis.

Finally, I configured with --disable-visibility: That compiled and linked
fine with Solaris CC on all platforms.

So long,

Igor Galić
Tel: +43 (0) 664 886 22 883
Mail: i.galic_at_[hidden]
GPG: 571B 8B8A FC97 266D BDA3  EF6F 43AD 80A4 5779 3257