Has anyone seen problems with the library search order in DU4.0-D? I built up my software
under 4.0-B with very little problems(pthreads), but the same software and makefiles under
DU4.0-D does not build successfully. I have to change the order of the library inclusions
drasticly to get my software to bind. Specificly I have to include ORACLE libraries before
the pthread and system libraries. Since most of the pthread and system libraries are shared
now, I do not understand why I would have to alter the order they are included.
example
This does not work
common -lnlsrtl3 -lcore3 -lnlsrtl3 -lgeneric -lsqlnet -lnlsrtl3
ld:
Unresolved:
bzero
realloc
__CFE_print_puts
strtol
__divqu
memcmp
..... (a bunch of other unresolved)
ttyname
getpwuid
getuid
strcmp
memchr
setvbuf
__CFE_fprint_puts_nl
munmap
strpbrk
gethostbyaddr
getsockopt
getsysinfo
fort: Severe: Failed while trying to link.
$(PTHREAD_LIBS) = -lpthreads -lbsd -lmach -lc_r
$(SYSTEM_LIBS) = -ltermlib -ldnet_stub -nocount -lm -lmld -lexc -lbsd -lrt -lUfor -lfor -lFutil -lc -lots
$(ORACLE_LIB) = -lnlsrtl -lsql -lclient -lepc -lepcfe -lncr -lcommon -lpls -lsqlnet -lcore -lcore3 -lnlsrtl3 -lcv6 -lnlsrtl -lcore -lcore3 -lnlsrtl3 -lsqlnet -lclient -lepc -lepcfe -lncr -lcommon -lnlsrtl3 -lcore3 -lnlsrtl3 -lgeneric -lsqlnet -lnlsrtl3 -lm
DBPNTOPTS=$(LIBHOME)/osntab.o -lsdbgen -lrgrshl -lrca -lfpa -lddb -lrgr_exc \
-lforshl -lrgrshl -lrgr_exc -lini -lrgr_exc -lfpa -lrgrshl -ldlshl \
-lrgrshl -lepashl -lfpa \
$(PTHREAD_LIBS) $(SYSTEM_LIBS) $(ORACLE_LIB)
This does work
$(PTHREAD_LIBS) = -lpthreads -lbsd -lmach -lc_r
$(SYSTEM_LIBS) = -ltermlib -ldnet_stub -nocount -lm -lmld -lexc -lbsd -lrt -lUfor -lfor -lFutil -lc -lots
$(ORACLE_LIB) = -lnlsrtl -lsql -lclient -lepc -lepcfe -lncr -lcommon -lpls -lsqlnet -lcore -lcore3 -lnlsrtl3 -lcv6 -lnlsrtl -lcore -lcore3 -lnlsrtl3 -lsqlnet -lclient -lepc -lepcfe -lncr -lcommon -lnlsrtl3 -lcore3 -lnlsrtl3 -lgeneric -lsqlnet -lnlsrtl3 -lm
DBPNTOPTS=$(LIBHOME)/osntab.o -lsdbgen -lrgrshl -lrca -lfpa -lddb -lrgr_exc \
-lforshl -lrgrshl -lrgr_exc -lini -lrgr_exc -lfpa -lrgrshl -ldlshl \
-lrgrshl -lepashl -lfpa \
$(ORACLE_LIB) $(PTHREAD_LIBS) $(SYSTEM_LIBS)
I have about 120 hardcoded makefiles using the three variables ORACLE_LIB, PTHREAD_LIBS, and SYSTEM_LIBS
as needed, and do not really want to checkout and modify all of them. Also would really like to understand what
happened, since this also is affecting third party makefiles that I REALLY do not want to get involved redesigning.
David McDaniel(maudib_at_baileynm.com)
Received on Wed Jan 28 1998 - 15:03:41 NZDT