Greetings.


  I tried to compile cyrus under Red Hat 7.1, but the following errors
  occured:

[root@world master]# gcc -L/usr/local/lib -Wl,-rpath,/usr/local/lib  -g -O2  -o master 
master.o masterconf.o cyrusMasterMIB.o -lucdagent -lucdmibs -lsnmp -lssl -lcrypto  
-lfl -ldb   -lcom_err 
/usr/lib/gcc-lib/i386-redhat-linux/2.96/../../../libucdmibs.so: undefined reference to 
`smux_listen_sd'
/usr/lib/gcc-lib/i386-redhat-linux/2.96/../../../libucdmibs.so: undefined reference to 
`rpmdbClose'
/usr/lib/gcc-lib/i386-redhat-linux/2.96/../../../libucdmibs.so: undefined reference to 
`rpmdbGetIteratorOffset'
/usr/lib/gcc-lib/i386-redhat-linux/2.96/../../../libucdmibs.so: undefined reference to 
`headerLink'
/usr/lib/gcc-lib/i386-redhat-linux/2.96/../../../libucdmibs.so: undefined reference to 
`rpmdbOpen'
/usr/lib/gcc-lib/i386-redhat-linux/2.96/../../../libucdmibs.so: undefined reference to 
`rpmdbInitIterator'
/usr/lib/gcc-lib/i386-redhat-linux/2.96/../../../libucdmibs.so: undefined reference to 
`rpmGetPath'
/usr/lib/gcc-lib/i386-redhat-linux/2.96/../../../libucdmibs.so: undefined reference to 
`headerFree'
/usr/lib/gcc-lib/i386-redhat-linux/2.96/../../../libucdmibs.so: undefined reference to 
`XrpmdbNextIterator'
/usr/lib/gcc-lib/i386-redhat-linux/2.96/../../../libucdmibs.so: undefined reference to 
`rpmReadConfigFiles'
/usr/lib/gcc-lib/i386-redhat-linux/2.96/../../../libucdmibs.so: undefined reference to 
`headerGetEntry'
/usr/lib/gcc-lib/i386-redhat-linux/2.96/../../../libucdmibs.so: undefined reference to 
`rpmdbFreeIterator'
collect2: ld returned 1 exit status

  I suspected that it might be a compiler issue (2.96 is I believe still experimental)
  so I compiled with kgcc:
[root@world master]# kgcc -L/usr/local/lib -Wl,-rpath,/usr/local/lib  -g -O2  -o 
master master.o masterconf.o cyrusMasterMIB.o -lucdagent -lucdmibs -lsnmp -lssl 
-lcrypto  -lfl -ldb   -lcom_err 
/usr/lib/libucdmibs.so: undefined reference to `smux_listen_sd'
/usr/lib/libucdmibs.so: undefined reference to `rpmdbClose'
/usr/lib/libucdmibs.so: undefined reference to `rpmdbGetIteratorOffset'
/usr/lib/libucdmibs.so: undefined reference to `headerLink'
/usr/lib/libucdmibs.so: undefined reference to `rpmdbOpen'
/usr/lib/libucdmibs.so: undefined reference to `rpmdbInitIterator'
/usr/lib/libucdmibs.so: undefined reference to `rpmGetPath'
/usr/lib/libucdmibs.so: undefined reference to `headerFree'
/usr/lib/libucdmibs.so: undefined reference to `XrpmdbNextIterator'
/usr/lib/libucdmibs.so: undefined reference to `rpmReadConfigFiles'
/usr/lib/libucdmibs.so: undefined reference to `headerGetEntry'
/usr/lib/libucdmibs.so: undefined reference to `rpmdbFreeIterator'
collect2: ld returned 1 exit status

  Since it refers to rpm* stuff, I do not suspect that Cyrus itself is broken, but
  Red Hat 7.1.  I could not imagine why Cyrus would want to have anything to
  do with rpms, unless this acronym stands for something else than the usual
  binary packaging system.

  Any help would be appreciated.  I have no clue what libucdmibs.so's function is
  and how to correct this.  Is it possible that library is missing on the
  compiler's command line?


Sincerely,
Hans Deragon

Reply via email to