Kbase P144535: Warning when compiling application with g++ that uses OpenEdge ODBC drivers on Linux
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  17/04/2009 |
|
Status: Unverified
SYMPTOM(s):
Warning when compiling application with g++ that uses OpenEdge ODBC drivers on Linux
/usr/bin/ld: warning: libstdc++.so.5, needed by ../lib/libodbc.so, may conflict with libstdc++.so.6
Executable works as expected
Warning does not occur when compiling with cc or gcc
FACT(s) (Environment):
ldd against $DLC/odbc/lib/libodbc.so shows:
linux-gate.so.1 => (0xffffe000)
libpthread.so.0 => /lib/tls/libpthread.so.0 (0xf7ec4000)
librt.so.1 => /lib/tls/librt.so.1 (0xf7eb0000)
libodbcinst.so => not found
libpgicu23.so => not found
libdl.so.2 => /lib/libdl.so.2 (0xf7eac000)
libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0xf7df2000)
libm.so.6 => /lib/tls/libm.so.6 (0xf7dcf000)
libc.so.6 => /lib/tls/libc.so.6 (0xf7ca4000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xf7c9c000)
/lib/ld-linux.so.2 (0x56555000)
ldd against executable (demoodbc) created using gcc:
linux-gate.so.1 => (0xffffe000)
libodbc.so =>
as01/oe/linuxx64/v101C03/dlc/odbc/lib/libodbc.so (0xf7ef9000)
libodbcinst.so =>
as01/oe/linuxx64/v101C03/dlc/odbc/lib/libodbcinst.so (0xf7e4d000)
libc.so.6 => /lib/tls/libc.so.6 (0x005ed000)
libpthread.so.0 => /lib/tls/libpthread.so.0 (0x0071a000)
librt.so.1 => /lib/tls/librt.so.1 (0xf7e16000)
libpgicu23.so =>
as01/oe/linuxx64/v101C03/dlc/odbc/lib/libpgicu23.so (0xf731b000)
libdl.so.2 => /lib/libdl.so.2 (0x0072e000)
libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0xf7261000)
libm.so.6 => /lib/tls/libm.so.6 (0x00734000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00ab3000)
/lib/ld-linux.so.2 (0x005d4000)
libstdc++-libc6.2-2.so.3 => /usr/lib/libstdc++-libc6.2-2.so.3 (0xf721c000)
ldd against executable (demoodbc) created using g++:
linux-gate.so.1 => (0xffffe000)
libodbc.so => /usr/lib/libodbc.so (0x00b22000)
libodbcinst.so => not found
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x009b1000)
libm.so.6 => /lib/tls/libm.so.6 (0x00734000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00ab3000)
libc.so.6 => /lib/tls/libc.so.6 (0x005ed000)
libdl.so.2 => /lib/libdl.so.2 (0x0072e000)
libpthread.so.0 => /lib/tls/libpthread.so.0 (0x0071a000)
/lib/ld-linux.so.2 (0x005d4000)
OpenEdge 10.1C
OpenEdge 10.2A
Red Hat Linux
CAUSE:
g++ compiler uses a later version of the libstdc++.so.* library than libodbc.so expects
FIX:
The warning is just that; a warning. The executable should still work as expected but additional QA is recommended.
Alternatively compile with cc or gcc if possible.