Open MPI logo

Hardware Locality Development Mailing List Archives

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

Subject: Re: [hwloc-devel] Bug-Report: visibility=hiden on Sparc/Sun CC
From: Jeff Squyres (jsquyres) (jsquyres_at_[hidden])
Date: 2011-09-05 15:18:17


I do not believe your diagnosis is correct (but I am not at keyboard to check). The configure visibility stuff turns on 2 different things:

- visibility compiler attributes
- compiler cli flags (fvisibility)

With your sed, u only disabled the cli options, whichight be redundant anyway. But the vis attrs were left on, and therefore the lib symbols might not have been visible properly...? That's a guess.

The fact that u did disable vis and it works means that when all vis stuff is properly disabled, it works fine.

So I think the real issue is why configure might be getting your visibility tests wrong...? Please send your configure stdout/stderr and config.log - we can have a look.

Sent from my phone. No type good.

On Sep 4, 2011, at 12:26 PM, Igor Galić <i.galic_at_[hidden]> wrote:

>
> 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,
> i
>
> --
> Igor Galić
>
> Tel: +43 (0) 664 886 22 883
> Mail: i.galic_at_[hidden]
> URL: http://brainsware.org/
> GPG: 571B 8B8A FC97 266D BDA3 EF6F 43AD 80A4 5779 3257
>
> _______________________________________________
> hwloc-devel mailing list
> hwloc-devel_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/hwloc-devel