[syslog-ng] Solaris 10 support(?) in latest versions (e.g. 3.3.2)

Gergely Nagy algernon at balabit.hu
Tue Nov 15 17:25:44 CET 2011


Marvin Nipper <Marvin.Nipper at stream.com> writes:

> Problem #1
> Latest packaging no longer works with Solaris-based "make".

Aye, this is known and intentional, 'fixing' the makefiles to be
compatible with non-gnu makes would be more effort than requiring users
to use gnu make.

> Problem #2
> Can no longer perform successful compilations, due to this error:
> ld: fatal: relocation error: R_386_GOTOFF
>
> Same configure output as previously shown, followed by gmake (to get around the first problem).
>
> Numerous modules compile successfully, but then this happens:
> gcc -DHAVE_CONFIG_H -I. -I../..  -D_GNU_SOURCE -I../../lib/include -I../../lib/include -I../../modules/include  -Wall -g -O2 -D_REENTRANT -D_POSIX_C_SOURCE=199506L -D_POSIX_PTHREAD_SEMANTICS -D_XPG4_2 -MT iv_event_test.o -MD -MP -MF .deps/iv_event_test.Tpo -c -o iv_event_test.o iv_event_test.c
> mv -f .deps/iv_event_test.Tpo .deps/iv_event_test.Po
> /bin/bash ../../libtool --tag=CC   --mode=link gcc -Wall -g -O2 -D_REENTRANT -D_POSIX_C_SOURCE=199506L -D_POSIX_PTHREAD_SEMANTICS -D_XPG4_2  -R/usr/local/lib -o iv_event_test iv_event_test.o ../../lib/libivykis.la ../libivykis-modules.la -lrt  -lpthread -lsocket
> libtool: link: gcc -Wall -g -O2 -D_REENTRANT -D_POSIX_C_SOURCE=199506L -D_POSIX_PTHREAD_SEMANTICS -D_XPG4_2 -o iv_event_test iv_event_test.o  ../../lib/.libs/libivykis.a ../.libs/libivykis-modules.a /var/opt/packages/syslog-ng-3.3.2/lib/ivykis/lib/.libs/libivykis.a -lrt -lpthread -lsocket -R/usr/local/lib
> ld: fatal: relocation error: R_386_GOTOFF: file ../.libs/libivykis-modules.a(iv_event.o): symbol __tls: relocation illegal for TLS symbol
> ld: fatal: relocation error: R_386_GOTOFF: file ../.libs/libivykis-modules.a(iv_event.o): symbol __tls: relocation illegal for TLS symbol
> ld: fatal: relocation error: R_386_GOTOFF: file ../.libs/libivykis-modules.a(iv_event.o): symbol __tls: relocation illegal for TLS symbol
> ld: fatal: relocation error: R_386_GOTOFF: file ../.libs/libivykis-modules.a(iv_event.o): symbol __tls: relocation illegal for TLS symbol
> collect2: ld returned 1 exit status

This is interesting...

> Again, adopting the "Google is my friend" approach, this appears to be an issue with "Solaris not supporting Visibility". (http://www.ilkda.com/compile/Build_Problems.htm)
> Most of the sites where I see this being discussed, with other (various) source components, I also see the developers subsequently modifying their environment to "adjust for" the Visibility issue in Solaris.
>
> So, again, not being a C developer myself, I guess I'm wondering whether I'm just doing something wrong with 3.3.2 (i.e. something that I need to do different from my 3.0.5 compilation), or whether this is truly just a "Solaris thing" that has not been accounted for in the current code base?
>
> Sorry for not being better at sorting this out myself.  Any and all help/guidance would certainly be appreciated.  GLAD to do some sort of testing here, if that will help.

The links you provided are helpful, I'll see if I can come up with a
patch that makes the compile work with Solaris' ld, without making the
source look horrid.

Thanks for the report!

-- 
|8]



More information about the syslog-ng mailing list