[asterisk-users] reg static build

Kevin P. Fleming
Thu, 21 May 2009 13:59:04 -0000

sasirekha jaganathan wrote:

>   Did anyone tried static build of asterisk 1.6 version?
> Installation fails when tried with static build.
>
>
> warning: Using 'initgroups' in statically linked applications
requires
> at runtime the shared libraries from the glibc version used for linking
> asterisk.o: In function `cli_prompt':
> warning: Using 'getgrgid' in statically linked applications
requires at
> runtime the shared libraries from the glibc version used for linking
> asterisk.o: In function `main':
> warning: Using 'getgrnam' in statically linked applications
requires at
> runtime the shared libraries from the glibc version used for linking
> editline/libedit.a(readline.o_a): In function
> `username_completion_function':
> warning: Using 'getpwent' in statically linked applications
requires at
> runtime the shared libraries from the glibc version used for linking
> asterisk.o: In function `main':
> warning: Using 'getpwnam' in statically linked applications
requires at
> runtime the shared libraries from the glibc version used for linking
> asterisk.o: In function `cli_prompt':
> warning: Using 'getpwuid' in statically linked applications
requires at
> runtime the shared libraries from the glibc version used for linking
> editline/libedit.a(readline.o_a): In function
> `username_completion_function':
>  warning: Using 'setpwent' in statically linked applications
requires at
> runtime the shared libraries from the glibc version used for linking
> warning: Using 'endpwent' in statically linked applications
requires at
> runtime the shared libraries from the glibc version used for linking
> utils.o: In function `ast_gethostbyname':

How does any of that qualify as 'installation fails'? Do you see any
error messages in that output (I don't). Was Asterisk installed? Did you
try running it at all?

A static build of Asterisk works just fine. What you are seeing is that
making a static build of *any* application that uses name resolution
services from glibc means that certain parts of that glibc that the
application was built against be present on the system the application
is run on; in other words, it's not a completely static build, and this
is not something that the application developer can do anything about.
Googling for these messages will tell you in massive amounts of detail
exactly what all of this means.

If you want to make a real static build, you'll have to use a different
C library.

--
Kevin P. Fleming
Digium, Inc. | Director of Software Technologies
445 Jan Davis Drive NW - Huntsville, AL 35806 - USA
skype: kpfleming | jabber: kpfleming at digium.com
Check us out at www.digium.com & www.asterisk.org