I've ran into an issue compiling openib's Dynamic SL support  on a RH 6.2 based system with the Oracle Studio compilers. 

Turns out if I compile btl_openib_connect_sl.c with the Oracle Studio compilers with the "-g" option the compiler compiles some static inline functions in ib_types.h standalone (as opposed to ignoring the functions since they are not called in the btl_openib_connect_sl.c source).  This creates a dependency on the symbol ib_error_str in btl_openib_connect_sl.o .  Note this symbol is defined in libosmcomp.so.

My question is should btl_openib_connect_sl.c be linking to libosmcomp.so since btl_openib_connect_sl.c  is including ib_types.h or is there an assumption being made that btl_openib_connect_sl.c is just using macros/defines provided by the header and nothing requiring access to libosmcomp.so?

I ask this because I can make my original issue go away on RH 5.X systems if I link in libosmcomp.so however, this library doesn't exist on RH 6.2 systems without RH 5 compat headers package and doesn't have a 32 bit version on RH 6.2 systems at all.  The point is if I try to fix the libosmcomp.so dependency by doing an AC_CHECK_LIB that RH 6.X system will actually stop configuring in Dynamic SL. 

Terry D. Dontje | Principal Software Engineer
Developer Tools Engineering | +1.781.442.2631
Oracle - Performance Technologies
95 Network Drive, Burlington, MA 01803
Email terry.dontje@oracle.com