Yes - our build process also compiles librelp, and places them in ${INSTALL}/lib (hence the -L${INSTALL}/lib -R${INSTALL}/lib in our LDFLAGS.

Thanks,
--Scott

On 10/23/2012 07:53 PM, Augie Schwer wrote:
Do you have the RELP libraries installed on the server you are running
rsyslog on?  --Augie

On Tue, Oct 23, 2012 at 7:43 AM, Scott Severtson
<[email protected]> wrote:
All,

We're having some problems with linking on Solaris 10 x64. On startup with
certain plugins enabled, we get messages like:
---
./sbin/rsyslogd -c5 -f/path/to/rsyslog.conf -N1

rsyslogd: version 5.8.1, config validation run (level 1), master config
/path/to/rsyslog.conf
rsyslogd: could not load module './rsyslog-5.8.13/lib/rsyslog/imrelp.so',
dlopen: ld.so.1: rsyslogd: fatal: relocation error: file
./rsyslog-5.8.13/lib/rsyslog/imrelp.so: symbol relpEngineDestruct:
referenced symbol not found
  [try http://www.rsyslog.com/e/2066]
rsyslogd: the last error occured in ./rsyslog/conf/tcp-server.conf, line
5:"$ModLoad imrelp"
rsyslogd: invalid or yet-unknown config file command - have you forgotten to
load a module? [try http://www.rsyslog.com/e/3003]
rsyslogd: the last error occured in ./rsyslog/conf/tcp-server.conf, line
10:"$InputRELPServerRun 20514"
rsyslogd: the last error occured in ./rsyslog/conf/rsyslog.conf, line
8:"$IncludeConfig ./rsyslog/conf/tcp-server.conf"
rsyslogd: CONFIG ERROR: could not interpret master config file
'./rsyslog/conf/rsyslog.conf'. [try http://www.rsyslog.com/e/2124]
---


 From the PREFIX directory, ldd shows undefined debugging symbols in some
modules (omitted modules with no linking errors):
---
# find . -name \*.so -print -exec ldd -d {} \;
./lib/rsyslog/omrelp.so
         libc.so.1 =>     /lib/64/libc.so.1
         libgcc_s.so.1 => /opt/csw/gcc4/lib/amd64/libgcc_s.so.1
         symbol not found: dbgprintf (./lib/rsyslog/omrelp.so)
         libm.so.2 =>     /lib/64/libm.so.2
./lib/rsyslog/lmnsd_ptcp.so
         libc.so.1 =>     /lib/64/libc.so.1
         libgcc_s.so.1 => /opt/csw/gcc4/lib/amd64/libgcc_s.so.1
         symbol not found: Debug (./lib/rsyslog/lmnsd_ptcp.so)
         libm.so.2 =>     /lib/64/libm.so.2
./lib/rsyslog/immark.so
         libc.so.1 =>     /lib/64/libc.so.1
         libgcc_s.so.1 => /opt/csw/gcc4/lib/amd64/libgcc_s.so.1
         symbol not found: MarkInterval (./lib/rsyslog/immark.so)
         libm.so.2 =>     /lib/64/libm.so.2
./lib/rsyslog/lmnet.so
         libc.so.1 =>     /lib/64/libc.so.1
         libgcc_s.so.1 => /opt/csw/gcc4/lib/amd64/libgcc_s.so.1
         symbol not found: Debug (./lib/rsyslog/lmnet.so)
         libm.so.2 =>     /lib/64/libm.so.2
./lib/rsyslog/lmtcpsrv.so
         libc.so.1 =>     /lib/64/libc.so.1
         libgcc_s.so.1 => /opt/csw/gcc4/lib/amd64/libgcc_s.so.1
         symbol not found: Debug (./lib/rsyslog/lmtcpsrv.so)
         libm.so.2 =>     /lib/64/libm.so.2
./lib/rsyslog/imtcp.so
         libc.so.1 =>     /lib/64/libc.so.1
         libgcc_s.so.1 => /opt/csw/gcc4/lib/amd64/libgcc_s.so.1
         symbol not found: Debug (./lib/rsyslog/imtcp.so)
         libm.so.2 =>     /lib/64/libm.so.2
./lib/rsyslog/imdiag.so
         libc.so.1 =>     /lib/64/libc.so.1
         libgcc_s.so.1 => /opt/csw/gcc4/lib/amd64/libgcc_s.so.1
         symbol not found: Debug (./lib/rsyslog/imdiag.so)
         libm.so.2 =>     /lib/64/libm.so.2
./lib/rsyslog/omprog.so
         libc.so.1 =>     /lib/64/libc.so.1
         libgcc_s.so.1 => /opt/csw/gcc4/lib/amd64/libgcc_s.so.1
         symbol not found: Debug (./lib/rsyslog/omprog.so)
         libm.so.2 =>     /lib/64/libm.so.2
./lib/rsyslog/imudp.so
         librt.so.1 =>    /lib/64/librt.so.1
         libc.so.1 =>     /lib/64/libc.so.1
         libgcc_s.so.1 => /opt/csw/gcc4/lib/amd64/libgcc_s.so.1
         libaio.so.1 =>   /lib/64/libaio.so.1
         libmd.so.1 =>    /lib/64/libmd.so.1
         symbol not found: Debug (./lib/rsyslog/imudp.so)
         libm.so.2 =>     /lib/64/libm.so.2
./lib/rsyslog/lmnetstrms.so
         libc.so.1 =>     /lib/64/libc.so.1
         libgcc_s.so.1 => /opt/csw/gcc4/lib/amd64/libgcc_s.so.1
         symbol not found: Debug (./lib/rsyslog/lmnetstrms.so)
         libm.so.2 =>     /lib/64/libm.so.2
./lib/rsyslog/imsolaris.so
         libdoor.so.1 =>  /lib/64/libdoor.so.1
         libpthread.so.1 =>       /lib/64/libpthread.so.1
         libc.so.1 =>     /lib/64/libc.so.1
         libgcc_s.so.1 => /opt/csw/gcc4/lib/amd64/libgcc_s.so.1
         symbol not found: Debug (./lib/rsyslog/imsolaris.so)
         libm.so.2 =>     /lib/64/libm.so.2
./lib/rsyslog/omruleset.so
         libc.so.1 =>     /lib/64/libc.so.1
         libgcc_s.so.1 => /opt/csw/gcc4/lib/amd64/libgcc_s.so.1
         symbol not found: Debug (./lib/rsyslog/omruleset.so)
         libm.so.2 =>     /lib/64/libm.so.2
./lib/rsyslog/imfile.so
         libc.so.1 =>     /lib/64/libc.so.1
         libgcc_s.so.1 => /opt/csw/gcc4/lib/amd64/libgcc_s.so.1
         symbol not found: Debug (./lib/rsyslog/imfile.so)
         libm.so.2 =>     /lib/64/libm.so.2
./lib/rsyslog/imrelp.so
         libc.so.1 =>     /lib/64/libc.so.1
         libgcc_s.so.1 => /opt/csw/gcc4/lib/amd64/libgcc_s.so.1
         symbol not found: dbgprintf (./lib/rsyslog/imrelp.so)
         libm.so.2 =>     /lib/64/libm.so.2
---

We're compiling with GCC 4.3.3, as provided by the OpenCSW project. Our
build steps are:
---
env \
PATH="/opt/csw/gcc4/bin:/opt/csw/bin:/opt/csw/gnu:/usr/sbin:/usr/bin:/usr/sfw/bin:/usr/ccs/bin"
\
     AR="/opt/csw/bin/gar" \
     CC="/opt/csw/gcc4/bin/gcc" \
     CFLAGS="-O3 -march=athlon64 -m64 -I/opt/csw/include" \
     LDFLAGS="-L${INSTALL}/lib -R${INSTALL}/lib -L/opt/csw/gcc4/lib/amd64
-R/opt/csw/gcc4/lib/amd64 -L/opt/csw/lib/amd64 -R/opt/csw/lib/amd64 " \
     ./configure \
         --prefix=${INSTALL} \
         --libdir=${INSTALL}/lib \
         --includedir=${INSTALL}/include \
         --disable-klog \
         --enable-imfile \
         --enable-imsolaris \
         --enable-regexp \
         --enable-imdiag \
         --enable-omprog \
         --enable-relp \
         --disable-omuxsock \
         --enable-static=relp \
                 RELP_LIBS=${INSTALL}/lib \
                 RELP_CFLAGS=-I${INSTALL}/include

env \
PATH="/opt/csw/gcc4/bin:/opt/csw/bin:/opt/csw/gnu:/usr/sbin:/usr/bin:/usr/sfw/bin:/usr/ccs/bin"
\
     /opt/csw/bin/gmake
env \
PATH="/opt/csw/gcc4/bin:/opt/csw/bin:/opt/csw/gnu:/usr/sbin:/usr/bin:/usr/sfw/bin:/usr/ccs/bin"
\
     /opt/csw/bin/gmake install
---

We don't see anything unusual in the compiler output.

Any suggestions on what flags we need to set at compile time to correctly
resolve these linking issues?

Thanks,
--Scott Severtson
_______________________________________________
rsyslog mailing list
http://lists.adiscon.net/mailman/listinfo/rsyslog
http://www.rsyslog.com/professional-services/
What's up with rsyslog? Follow https://twitter.com/rgerhards
NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad of
sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you DON'T
LIKE THAT.



_______________________________________________
rsyslog mailing list
http://lists.adiscon.net/mailman/listinfo/rsyslog
http://www.rsyslog.com/professional-services/
What's up with rsyslog? Follow https://twitter.com/rgerhards
NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad of 
sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you DON'T LIKE 
THAT.

Reply via email to