Operating System - HP-UX
1751978 Members
4468 Online
108784 Solutions
New Discussion юеВ

Re: Problem when building a 64 bit shared library aCC A.03.33

 
Ramdas Menon
New Member

Problem when building a 64 bit shared library aCC A.03.33

I am trying to build a 64 bit shared library
and I get an Unsatisfied symbol error from
ld.

Searching library /usr/lib/pa20_64/milli.a:
ld: (Warning) Unsatisfied symbol "__shlTerm" in file
ld: (Warning) Unsatisfied symbol "Iostream_init::Iostream_init()%1" in file a.o
ld: (Warning) Unsatisfied symbol "Iostream_init::~Iostream_init()" in file a.o

I have installed the patches B3913DB (aCC C.03.33), PHSS_24627 (aC++ run time libraries for aCC A.03.33) and PHSS_24303. I am running this in a HP-UX B.11.00 64 bit OS.
2 REPLIES 2
kalimuthu
New Member

Re: Problem when building a 64 bit shared library aCC A.03.33

hello,

It seems problem with your milli.a ,
please check whethere the milli.a is the correct library.

regards
kalimuthu
Mike Stroyan
Honored Contributor

Re: Problem when building a 64 bit shared library aCC A.03.33

It looks like the link did not include the appropriate C++ runtime libraries.

When creating a C++ shared library you need to use 'aCC -b' instead of 'ld -b' to create the library. If you use the '-AA' or '-mt' options, then you should use the same options for the library link step as you used for compiling the source code. The aCC command will invoke ld with the right options, including the right runtime libraries.

% echo 'int l(){return 0;}' > l.cpp
% aCC -c +z l.cpp
% aCC -b -o l.sl l.o