Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
Re: loading dynamic modules in a static shell
- X-seq: zsh-users 7004
- From: Vincent <zsh@xxxxxxxxxxx>
- To: Dominic Mitchell <dom@xxxxxxxxxxxxxxxx>
- Subject: Re: loading dynamic modules in a static shell
- Date: Sun, 18 Jan 2004 23:25:52 -0600
- Cc: zsh-users@xxxxxxxxxx
- In-reply-to: <20040118153107.GA55970@xxxxxxxxxxxxxxxxxxxx>
- Mailing-list: contact zsh-users-help@xxxxxxxxxx; run by ezmlm
- References: <20040118121441.GA29157@xxxxxxxxxxxxxxxxx> <20040118153107.GA55970@xxxxxxxxxxxxxxxxxxxx>
On Sun, Jan 18, 2004 at 03:31:07PM +0000, Dominic Mitchell wrote:
> On Sun, Jan 18, 2004 at 06:14:42AM -0600, Vincent wrote:
> > Is it supposed to be possible to compile a static shell with part of
> > the modules built in and to be able to load the remaining modules with
> > zmodload?
> > I compiled zsh-4.0.9 configured with
> > "configure --enable-ldflags=-static", installed it, then reconfigured
> > it as shared, did a "make modules" and installed the dynamic modules.
> > However, when I try loading one of the dynamic modules that are not
> > statically linked in, such as zftp, it just says
> > "zsh: failed to load module: zsh/zftp".
> >
> > I built a static shell to install in /bin on FreeBSD but did not want
> > it be so big with every module compiled in.
>
> I think it depends upon the capabilities of the platform's dynamic
> loader. Certainly for FreeBSD you won't be able to do this. This is
> because all dynamic loading is disabled when a static binary is used.
> For the current release (5.2) the root filesystem has been made dynamic
> in order to get this working (for the nsswitch stuff to work correctly).
Thanks for the reply. I did not realize that. I could have sworn I
remembered compiling programs before with mixed linking, where some
libs I specified as "/usr/lib/xxx.a" while others were dynamic,
specified with "-lxxx". Perhaps that was when I was running Linux.
I guess, for now, I just have to make a bloated executable in order to
have a statically linked shell. Perhaps I will try again later when I
upgrade from FreeBSD-5.1 to 5.2.
> I'm trying to remember the reasons why this is the case, but I can't
> quite recall them. But if you search the freebsd-current mailing list
> archives for "dynamic root", that should provoke some enlightening
> discussion.
>
> -Dom
I scanned through some of the postings. It did enlighten me on
another unrelated issue. I was wandering why a lot of the newer ports
were failing to run because they were linked using
/libexec/ld-elf.so.1 rather than /usr/libexec/ld-elf.so.1. Apparently
it is related to this changeover to a "dynamic root" that you
mentioned. I though some of the ports maintainers were just goofing
up :-).
Thanks.
Vincent
--
Avoid the VeriSign/Network Solutions domain registration trap!
http://www.InetAddresses.net
Messages sorted by:
Reverse Date,
Date,
Thread,
Author