View Single Post
Old 2009-09-04, 10:48   #1
linkhelpers
 

147648 Posts
Default Linkhelpers, Link error while linking a shared lib

Link error while linking a shared library in unix

Getting the following error ,

ld: /opt/syncsort39/lib/libsyncsort.sl: Mismatched ABI. 64-bit PA shared library found in 32-bit link.

Is there any difference in the ld options in opt file while linking a 64 bit shared library ? Or is the problem because we are trying to link both 32 bit and 64 bit libs together ?

From make file ...


# PFWSYNCM PROGRAMS
############################################################################
## Define include constants and Libraries
############################################################################

#SYBASE12 PATHS
SYBINCLUDE = $(SYBASE)/$(SYBASE_OCS)/include
SYBLIB = $(SYBASE)/$(SYBASE_OCS)/lib
LIBINCLUDE = ../../lib
SYNCINCLUDE = $(SYNCSORT)/include
SYSINCLUDE = /usr/include/sys

#########################
# Flags #
#########################


INCLUDEDIR = -I../ -I$(SYBINCLUDE) -I$(LIBINCLUDE) -I$(SYNCINCLUDE)

SYNCLIB = $(SYNCSORT)/lib/libsyncsort.sl
CTLIBS = -L$(SYBLIB) -lct -lcs -ltcl -lcomn -lintl
PFLIB = $(LIBINCLUDE)/opt/pflib.a
LIBS = $(PFLIB) $(CTLIBS) $(SYNCLIB)

CCOPTS = -c -Aa -O

CC=cc

##########################
# Objects of Make #
##########################

getpwd : getpwd.o $(PFLIB)
ld /lib/crt0.o +s getpwd.o $(LIBS) -lcl -lm -lc -lBSD -o getpwd
getpwd.o: ../getpwd.c
$(CC) $(CCOPTS) $(INCLUDEDIR) ../getpwd.c

I'm using
GCC on HPunix

Thanks in advance,
Linkhelpers
  Reply With Quote