Connecting Tech Pros Worldwide Help | Site Map

Run time error on AIX: "Symbol iconv was referenced"

kp
Guest
 
Posts: n/a
#1: Mar 13 '08
Hi,

I am compiling on an AIX 5.1 box and my test machine is AIX 5.3.

I run the foll. steps for compiling my test binary "test"
/usr/vacpp/bin/xlC test.c -c -o test.o -I/home/jag/progs/include -I/
usr/lpp/application/include
/usr/vacpp/bin/xlC -o test -L/home/jag/progs/lib -L/usr/lib -L/usr/lpp/
application/lib -brtl -s test.o -lapplicationapi -liconv


Now, when I run "test" on my AIX 5.3 box, I get the foll. error:
# ./test
exec(): 0509-036 Cannot load program ./opcapitest because of the
following errors:
rtld: 0712-001 Symbol iconv was referenced
from module /usr/lpp/application/lib/libapplicationapi.so(), but
a runtime definition
of the symbol was not found.
rtld: 0712-001 Symbol iconv_open was referenced
from module /usr/lpp/application/lib/libapplicationapi.so(), but
a runtime definition
of the symbol was not found.
rtld: 0712-001 Symbol iconv_close was referenced
from module /usr/lpp/application/lib/libapplicationapi.so(), but
a runtime definition
of the symbol was not found.
You have mail in /usr/spool/mail/root
#

Could you please tell me whats wrong here?

Thanks,
kp

P.S: if this is not the right forum for this question, please direct
me to the right one.
Kenneth Brody
Guest
 
Posts: n/a
#2: Mar 13 '08

re: Run time error on AIX: "Symbol iconv was referenced"


kp wrote:
Quote:
>
Hi,
>
I am compiling on an AIX 5.1 box and my test machine is AIX 5.3.
[...]
Quote:
# ./test
exec(): 0509-036 Cannot load program ./opcapitest because of the
following errors:
rtld: 0712-001 Symbol iconv was referenced
from module /usr/lpp/application/lib/libapplicationapi.so(), but
a runtime definition
of the symbol was not found.
[... Snip similar iconv-related missing symbols ...]
Quote:
P.S: if this is not the right forum for this question, please direct
me to the right one.
You would get more help in a group that discusses AIX and/or iconv.
However, my guess is that you are missing the shared / dynamically-
linked library that contains the iconv functions.

Find a group that discusses AIX and/or iconv, and show them the
above errors, along with the output of "ldd ./test" and perhaps the
output of "ldd /usr/lpp/application/lib/libapplicationapi.so" as
well.

--
+-------------------------+--------------------+-----------------------+
| Kenneth J. Brody | www.hvcomputer.com | #include |
| kenbrody/at\spamcop.net | www.fptech.com | <std_disclaimer.h|
+-------------------------+--------------------+-----------------------+
Don't e-mail me at: <mailto:ThisIsASpamTrap@gmail.com>

Walter Roberson
Guest
 
Posts: n/a
#3: Mar 13 '08

re: Run time error on AIX: "Symbol iconv was referenced"


In article <52abe2b5-385b-4d29-a4e8-db678b3e6ae9@e23g2000prf.googlegroups.com>,
kp <kiran.r.pillai@gmail.comwrote:

[OT]
Quote:
>I run the foll. steps for compiling my test binary "test"
>/usr/vacpp/bin/xlC test.c -c -o test.o -I/home/jag/progs/include -I/
>usr/lpp/application/include
>/usr/vacpp/bin/xlC -o test -L/home/jag/progs/lib -L/usr/lib -L/usr/lpp/
>application/lib -brtl -s test.o -lapplicationapi -liconv
Quote:
>Now, when I run "test" on my AIX 5.3 box, I get the foll. error:
># ./test
>exec(): 0509-036 Cannot load program ./opcapitest because of the
>following errors:
>rtld: 0712-001 Symbol iconv was referenced
from module /usr/lpp/application/lib/libapplicationapi.so(), but
>a runtime definition
of the symbol was not found.
You linked with -liconv on the 5.1 box, and I am going to guess
that that is linking against a shared library rather than
a static link. But the shared library symbol definitions
for the iconv library are corrupt or missing on your AIX 5.3 box.

My speculation would be that your problem is that you do not
have an accessible libiconv.so (on your dynamic link path) on
your AIX 5.3 box. iconv is sometimes an add-on or optionally-
installed library rather than something always installed with the OS.
--
"Ignorance has been our king... he sits unchallenged on the throne of
Man. His dynasty is age-old. His right to rule is now considered
legitimate. Past sages have affirmed it. They did nothing to unseat
him." -- Walter M Miller, Jr
jacob navia
Guest
 
Posts: n/a
#4: Mar 13 '08

re: Run time error on AIX: "Symbol iconv was referenced"


kp wrote:
Quote:
Hi,
>
I am compiling on an AIX 5.1 box and my test machine is AIX 5.3.
>
I run the foll. steps for compiling my test binary "test"
/usr/vacpp/bin/xlC test.c -c -o test.o -I/home/jag/progs/include -I/
usr/lpp/application/include
/usr/vacpp/bin/xlC -o test -L/home/jag/progs/lib -L/usr/lib -L/usr/lpp/
application/lib -brtl -s test.o -lapplicationapi -liconv
>
>
Now, when I run "test" on my AIX 5.3 box, I get the foll. error:
# ./test
exec(): 0509-036 Cannot load program ./opcapitest because of the
following errors:
rtld: 0712-001 Symbol iconv was referenced
from module /usr/lpp/application/lib/libapplicationapi.so(), but
a runtime definition
of the symbol was not found.
This means that a runtime shared object was not found that
defines the symbol iconv.

To solve this you should do:

1) ldd /usr/lpp/application/lib/libapplicationapi.so

This will list you all the shared objects needed by your shared object.


Note that all iconv methods are in /usr/lib/nls/loc/iconv/*

2) Once you find in which shared object the symbol iconv lives, you have
to add the directory where that shared object is to your LIBPATH
environment variable.

3) Then run ldd again to be sure you fixed it


--
jacob navia
jacob at jacob point remcomp point fr
logiciels/informatique
http://www.cs.virginia.edu/~lcc-win32
jacob navia
Guest
 
Posts: n/a
#5: Mar 13 '08

re: Run time error on AIX: "Symbol iconv was referenced"


Walter Roberson wrote:
Quote:
In article <52abe2b5-385b-4d29-a4e8-db678b3e6ae9@e23g2000prf.googlegroups.com>,
kp <kiran.r.pillai@gmail.comwrote:
>
[OT]
>
Quote:
>I run the foll. steps for compiling my test binary "test"
>/usr/vacpp/bin/xlC test.c -c -o test.o -I/home/jag/progs/include -I/
>usr/lpp/application/include
>/usr/vacpp/bin/xlC -o test -L/home/jag/progs/lib -L/usr/lib -L/usr/lpp/
>application/lib -brtl -s test.o -lapplicationapi -liconv
>
Quote:
>Now, when I run "test" on my AIX 5.3 box, I get the foll. error:
># ./test
>exec(): 0509-036 Cannot load program ./opcapitest because of the
>following errors:
>rtld: 0712-001 Symbol iconv was referenced
> from module /usr/lpp/application/lib/libapplicationapi.so(), but
>a runtime definition
> of the symbol was not found.
>
You linked with -liconv on the 5.1 box, and I am going to guess
that that is linking against a shared library rather than
a static link. But the shared library symbol definitions
for the iconv library are corrupt or missing on your AIX 5.3 box.
>

Note that all iconv methods are in /usr/lib/nls/loc/iconv/*
That is easy to verify
Quote:
My speculation would be that your problem is that you do not
have an accessible libiconv.so (on your dynamic link path) on
your AIX 5.3 box. iconv is sometimes an add-on or optionally-
installed library rather than something always installed with the OS.
The LIBPATH environment variable controls where the loader searchs
for shared objects


--
jacob navia
jacob at jacob point remcomp point fr
logiciels/informatique
http://www.cs.virginia.edu/~lcc-win32
kp
Guest
 
Posts: n/a
#6: Mar 13 '08

re: Run time error on AIX: "Symbol iconv was referenced"


Hi All,

Thanks a lot for your answers.

I was able to find the root cause of my issue.

I was not linking with iconv when I built the libapplicationapi.so,
which was causing the issue. I recompiled the library after linking
with iconv and the issue was resolved.

Thanks once again.

-kp

On Mar 13, 7:36 pm, jacob navia <ja...@nospam.comwrote:
Quote:
Walter Roberson wrote:
Quote:
In article <52abe2b5-385b-4d29-a4e8-db678b3e6...@e23g2000prf.googlegroups.com>,
kp <kiran.r.pil...@gmail.comwrote:
>
Quote:
[OT]
>
Quote:
Quote:
I run the foll. steps for compiling my test binary "test"
/usr/vacpp/bin/xlC test.c -c -o test.o -I/home/jag/progs/include -I/
usr/lpp/application/include
/usr/vacpp/bin/xlC -o test -L/home/jag/progs/lib -L/usr/lib -L/usr/lpp/
application/lib -brtl -s test.o -lapplicationapi -liconv
>
Quote:
Quote:
Now, when I run "test" on my AIX 5.3 box, I get the foll. error:
# ./test
exec(): 0509-036 Cannot load program ./opcapitest because of the
following errors:
rtld: 0712-001 Symbol iconv was referenced
from module /usr/lpp/application/lib/libapplicationapi.so(), but
a runtime definition
of the symbol was not found.
>
Quote:
You linked with -liconv on the 5.1 box, and I am going to guess
that that is linking against a shared library rather than
a static link. But the shared library symbol definitions
for the iconv library are corrupt or missing on your AIX 5.3 box.
>
Note that all iconv methods are in /usr/lib/nls/loc/iconv/*
That is easy to verify
>
Quote:
My speculation would be that your problem is that you do not
have an accessible libiconv.so (on your dynamic link path) on
your AIX 5.3 box. iconv is sometimes an add-on or optionally-
installed library rather than something always installed with the OS.
>
The LIBPATH environment variable controls where the loader searchs
for shared objects
>
--
jacob navia
jacob at jacob point remcomp point fr
logiciels/informatiquehttp://www.cs.virginia.edu/~lcc-win32
Closed Thread