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?
Hello.
Can you show me the output of "ldd /usr/local/lib/libnxddr_pgsql.so"?
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)
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
works :)