0.2.15 - cannot run

Started by bsadler, January 19, 2007, 11:58:02 AM

Previous topic - Next topic

franc

Hello, I try to compile 0.2.15

./configure --with-server --with-pgsql --prefix=/usr/local
make
make install

system: CentOS 4.4  2.6.9-42.0.3.ELsmp

Configuration of source code and compilation is ok, but when I try to run nxdbmgr check i get initialization error from libnxddr_pgsql.so and in log I get: unknown symbol PQExec.
When I run nxdbmgr from directory where source code is compiled - it run properly (I get message about difference of database version)
Sounds like is a problem with linking libraries?

Alex Kirhenshtein

Hello.

Can you show  me the output of "ldd /usr/local/lib/libnxddr_pgsql.so"?

franc

Sure :)
BTW At home I have latests Debian Sarge. I try to compile 0.2.15 on it - but result is the same:

./configure --prefix=/opt/netxms --with-server --with-pgsql
make
make install

(of course I add /opt/netxms/lib to /etc/ld.so.conf)

neotek:/opt/netxms/bin# ldd /opt/netxms/lib/libnxddr_pgsql.so
        libpthread.so.0 => /lib/tls/libpthread.so.0 (0x40010000)
        libnetxms.so.0 => /opt/netxms/lib/libnetxms.so.0 (0x40020000)
        libz.so.1 => /usr/lib/libz.so.1 (0x40032000)
        libdl.so.2 => /lib/tls/libdl.so.2 (0x40044000)
        libcrypto.so.0.9.7 => /usr/lib/i686/cmov/libcrypto.so.0.9.7 (0x40047000)
        libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x40146000)
        libm.so.6 => /lib/tls/libm.so.6 (0x40200000)
        libc.so.6 => /lib/tls/libc.so.6 (0x40223000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x40358000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000)

Victor Kirhenshtein

Hello!

It's an error in configure script (reference to libpq missing in libnxddr_pgsql.so because of incorrect link options), I'll fix it in the next release. For now you can use the following workaround:

In the file src/server/dbdrv/pgsql/Makefile find line starting with LDFLAGS = and append -lpq to it. You should get something like this:

LDFLAGS =  -L/usr/local/lib -lpthread -lpq

Then run make clean ; make ; make install in src/server/dbdrv/pgsql directory. This should create correct libnxddr_pgsql.so.

Hope this helps!

Best regards,
Victor

franc