relocation error: yyparse referenced symbol not found

This is my set up:

LD_LIBRARY_PATH=/apps/rogue_wave_sol7/workspaces/workshop6_u1/4d/lib:/apps/fu/section20/vendorLib/EMS/4.2/lib:/home/a487891/cppunit/lib:/usr/openwin/lib:/usr/lib

ldd -d TestDatalinkTradeRouter
libintl.so => /usr/lib/libintl.so
libw.so.1 => /usr/lib/libw.so.1
libnsl.so.1 => /usr/lib/libnsl.so.1
libdbt4d.so => /apps/rogue_wave_sol7/workspaces/workshop6_u1/4d/lib/libdbt4d.so
libcrypto.so => /apps/fu/section20/vendorLib/EMS/4.2/lib/libcrypto.so
liblber.so => /apps/fu/section20/vendorLib/EMS/4.2/lib/liblber.so
libldap.so => /apps/fu/section20/vendorLib/EMS/4.2/lib/libldap.so
libssl.so => /apps/fu/section20/vendorLib/EMS/4.2/lib/libssl.so
libtibems.so => /apps/fu/section20/vendorLib/EMS/4.2/lib/libtibems.so
libtibemslookup.so => /apps/fu/section20/vendorLib/EMS/4.2/lib/libtibemslookup.so
libtibiconv.so => /apps/fu/section20/vendorLib/EMS/4.2/lib/libtibiconv.so
libtibjms.so => /apps/fu/section20/vendorLib/EMS/4.2/lib/libtibjms.so
libxml2.so => /apps/fu/section20/vendorLib/EMS/4.2/lib/libxml2.so
libz.so => /apps/fu/section20/vendorLib/EMS/4.2/lib/libz.so
libcppunit-1.12.so.0 => /home/a487891/cppunit/lib/libcppunit-1.12.so.0
libmth4d.so => /apps/rogue_wave_sol7/workspaces/workshop6_u1/4d/lib/libmth4d.so
libtls4d.so => /apps/rogue_wave_sol7/workspaces/workshop6_u1/4d/lib/libtls4d.so
liby.so.1 => /usr/lib/liby.so.1
libUil.so.3 => /usr/lib/libUil.so.3
libthread.so.1 => /usr/lib/libthread.so.1
libc.so.1 => /usr/lib/libc.so.1
libdl.so.1 => /usr/lib/libdl.so.1
libmp.so.2 => /usr/lib/libmp.so.2
libsocket.so.1 => /usr/lib/libsocket.so.1
libresolv.so.2 => /usr/lib/libresolv.so.2
libgen.so.1 => /usr/lib/libgen.so.1
libpthread.so.1 => /usr/lib/libpthread.so.1
libm.so.1 => /usr/lib/libm.so.1
libxview.so.3 => /usr/openwin/lib/libxview.so.3
libbla4d.so => /apps/rogue_wave_sol7/workspaces/workshop6_u1/4d/lib/libbla4d.so
libMrm.so.4 => /usr/lib/libMrm.so.4
libXm.so.4 => /usr/lib/libXm.so.4
libXt.so.4 => /usr/openwin/lib/libXt.so.4
libX11.so.4 => /usr/openwin/lib/libX11.so.4
libolgx.so.3 => /usr/openwin/lib/libolgx.so.3
libSM.so.6 => /usr/openwin/lib/libSM.so.6
libICE.so.6 => /usr/openwin/lib/libICE.so.6
libXext.so.0 => /usr/openwin/lib/libXext.so.0
/usr/platform/FJSV,GPUZC-M/lib/libc_psr.so.1

But still when I attempt to run my executable:

ld.so.1: TestDatalinkTradeRouter: fatal: relocation error: file /usr/lib/liby.so.1: symbol yyparse: referenced symbol not found
Killed

and the symbol is definded in libUil.so.3 => /usr/lib/libUil.so.3

[55] | 99316| 19656|FUNC |LOCL |0 |12 |yyparse

Any suggestions on how to solve this problem will be appreciated.

liby is yacc.

yacc produces a file y.tab.c with a function yyparse. Your app must have some lex/yacc code in it somewhere. There is no global yyparse function out there in a standard library that is exported to just any code that wants it - libUil is part of motif, and it does have a yyparse function used locally - what LOCL means. Does your code use motif?

Compilers all have yyparse functions as well, but each yyparse call is just for that one app. yyparse modules are often distibuted in a .a file rather than a shared library.

This doesn't look like something you built from scratch - there look to be vendor libraries.
IS there SDK programmer information? Or vendor support?

Just because you found a library with a yyparse symbol does not mean that much. It probably is not the one the code actually referenced.

Jim,

Thanks for your response. In trying to solve my original linker problem I ended up mixing apples and oranges, so to speak.

My original problem was a linker error:

Undefined first referenced
symbol in file
main /apps/workshop6_u1/WS6U1/lib/crt1.o
ld: fatal: Symbol referencing errors. No output written to TestDatalinkTradeRouter

So I ended up pulling in liby that had a GLOB definition of main, but in turn created other problems.