<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
May be my thoughts was presented in a wrong way.<br>
I perfectly know that libz.so is a part of any distribution ( I am
using Gentoo )<br>
The issue was not the library itself ( the library at the right place,
at /lib directory )<br>
but with the .so file itself.<br>
that file is a optional part of the Asterisk PBX program, and it's
G.729 codec library,<br>
and specifically for GLIB 2.3 X86_64 platform under Gentoo.<br>
The error Asterisk gives me is:<br>
<br>
[codec_g729a.so]Dec 4 19:34:04 WARNING[16384]: loader.c:248
ast_load_resource: /usr/lib/asterisk/modules/codec_g729a.so: undefined
symbol: gzread<br>
Dec 4 19:34:04 WARNING[16384]: loader.c:429 load_modules: Loading
module codec_g729a.so failed!<br>
<br>
The ldd saying about codec_g729a.so is:<br>
# ldd codec_g729a.so<br>
libc.so.6 => /lib/libc.so.6 (0x0000002a9567d000)<br>
/lib64/ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2
(0x000000552aaaa000)<br>
<br>
The nm -D codec_g729a.so saying is:<br>
U gzclose<br>
U gzdopen<br>
U gzread<br>
<br>
The nm -D /lib/libz.so saying is:<br>
00000000000035f0 T gzclose<br>
00000000000026a0 T gzdopen<br>
0000000000002ab0 T gzread<br>
<br>
The objdump -x codec_g729a.so saying is:<br>
Dynamic Section:<br>
NEEDED libc.so.6<br>
INIT 0x35c0<br>
<br>
As you can see here is the NEEDED libz.so is absent. And this is I am
trying to fix. Thats why I need such tool who can mangle the any
library's header I want.<br>
<br>
<br>
All the Best!<br>
Sergey.<br>
<br>
SlackRat wrote:
<blockquote
cite="mid87mzwtpj5b.fsf-GtzO1qr/b/653Rd6M7GqU0CW56haWIzXIrC0AzgbhvsKu2YovVVDERgSKFK9O5hcLMHrShElKjA@public.gmane.org"
type="cite">
<pre wrap="">Sergey Kuznetsov <a class="moz-txt-link-rfc2396E" href="mailto:tlug-9a/WvBvX2Qpg9hUCZPvPmw@public.gmane.org"><tlug-9a/WvBvX2Qpg9hUCZPvPmw@public.gmane.org></a> writes:
</pre>
<blockquote type="cite">
<pre wrap="">Hi there!
Does any one knows .so dynamic library mangling tool?
I have to modify precompiled library ( there is no sources at all till
Monday, but I have to finish my stuff before that time )
and issue is: this library cannot find gzread, gzopen, etc. because in
library's header is no such thing as NEEDED libz.so.
I have to modify that library to add there that field: NEEDED libz.so
but I cannot remember any tool who can mangle
the libraries in such way.
If someone knows any tool, which allows to do such stuff, can you send
me the name, or answer here if somebody
will be interested as well.
</pre>
</blockquote>
<pre wrap=""><!---->
I don't know what distribution you are using, but libz is as far as I know
part of most and perhaps all basic gnu/linux systems.
Take a long hard look at your installation files as you may in fact already
have libz somewhere.
In slackware it is part of the 'a' series in aaa_elflibs-9.2.0-i486-1.tgz
Hoping this might throw some light on your problem
</pre>
</blockquote>
<br>
</body>
</html>