C Stuff : library not linked? (75 Views)
Reply
Highlighted
Regular Advisor
Posts: 196
Registered: ‎04-10-2005
Message 1 of 1 (75 Views)

C Stuff : library not linked?

Hi again!

I am using a program, which I compiled on HP-UX 11.23, but I am getting an error:

/usr/lib/hpux64/dld.so: Unsatisfied code symbol 'rrd_clear_error' in load module '/opt/perl5/lib/site_perl/5.8.6/IA64.ARCHREV_0-LP64/auto/RRDs/RRDs.so'.

I tried:
$ chatr RRDs.so
RRDs.so:
64-bit ELF shared library
shared library dynamic path search:
LD_LIBRARY_PATH enabled first
SHLIB_PATH enabled second
embedded path enabled third -lrrd
shared library list:
libm.so.1
shared vtable support disabled
explicit unloading enabled
linkage table protection disabled
segments:
index type address flags size
6 text 4000000000000000 z---c- D (default)
7 data 6000000000000000 ---m-- D (default)
kernel assisted branch prediction enabled
lazy swap allocation for dynamic segments disabled
nulptr references disabled
address space model: default
caliper dynamic instrumentation disabled
root@visap00:/opt/perl5/lib/site_perl/5.8.6/IA64.ARCHREV_0-LP64/auto/RRDs
$ ldd -r RRDs.so
libm.so.1 => /usr/lib/hpux64/libm.so.1
symbol not found: rrd_update_v (./RRDs.so)
symbol not found: Perl_newSVpv (./RRDs.so)
symbol not found: Perl_newSVnv (./RRDs.so)
symbol not found: Perl_newSViv (./RRDs.so)
symbol not found: Perl_newSVuv (./RRDs.so)
symbol not found: malloc (./RRDs.so)
symbol not found: PL_sv_yes (./RRDs.so)
symbol not found: Perl_sv_newmortal (./RRDs.so)
symbol not found: Perl_sv_2mortal (./RRDs.so)
symbol not found: rrd_fetch (./RRDs.so)
symbol not found: parsetime (./RRDs.so)
symbol not found: Perl_sv_setpv (./RRDs.so)
symbol not found: Perl_sv_setiv (./RRDs.so)
symbol not found: printf (./RRDs.so)
symbol not found: PL_op (./RRDs.so)
symbol not found: rrd_update (./RRDs.so)
symbol not found: proc_start_end (./RRDs.so)
symbol not found: PL_stack_sp (./RRDs.so)
symbol not found: Perl_pad_sv (./RRDs.so)
symbol not found: rrd_first (./RRDs.so)
symbol not found: Perl_newXS (./RRDs.so)
symbol not found: Perl_newHV (./RRDs.so)
symbol not found: Perl_newAV (./RRDs.so)
symbol not found: Perl_form (./RRDs.so)
symbol not found: rrd_dump (./RRDs.so)
symbol not found: Perl_hv_store_ent (./RRDs.so)
symbol not found: rrd_info (./RRDs.so)
symbol not found: rrd_test_error (./RRDs.so)
symbol not found: rrd_last (./RRDs.so)
symbol not found: rrd_freemem (./RRDs.so)
symbol not found: Perl_get_sv (./RRDs.so)
symbol not found: rrd_tune (./RRDs.so)
symbol not found: rrd_get_error (./RRDs.so)
symbol not found: free (./RRDs.so)
symbol not found: rrd_clear_error (./RRDs.so)
symbol not found: rrd_set_error (./RRDs.so)
symbol not found: rrd_graph (./RRDs.so)
symbol not found: Perl_av_push (./RRDs.so)
symbol not found: Perl_newRV_noinc (./RRDs.so)
symbol not found: Perl_stack_grow (./RRDs.so)
symbol not found: PL_markstack_ptr (./RRDs.so)
symbol not found: rrd_create (./RRDs.so)
symbol not found: PL_stack_base (./RRDs.so)
symbol not found: rrd_xport (./RRDs.so)
symbol not found: rrd_restore (./RRDs.so)
symbol not found: PL_stack_max (./RRDs.so)
symbol not found: PL_sv_undef (./RRDs.so)
symbol not found: strcmp (./RRDs.so)
symbol not found: strcpy (./RRDs.so)
symbol not found: strlen (./RRDs.so)
symbol not found: Perl_mg_set (./RRDs.so)
symbol not found: Perl_sv_2pv_nolen (./RRDs.so)
symbol not found: Perl_sv_2pv_flags (./RRDs.so)
symbol not found: Perl_croak (./RRDs.so)
symbol not found: __errno (/usr/lib/hpux64/libm.so.1)

I used gcc for compiling, GNU make, all programs that I am using were compiled with gcc in 64bit mode.
What could be the reason for this error?

I will be glad for any idea.

Thank you.
The opinions expressed above are the personal opinions of the authors, not of HP. By using this site, you accept the Terms of Use and Rules of Participation.