Subject: RE: dlopen patch [was Re: dlopen]
From: [email-masked] (Christian Jullien)

16 Nov 1998 14:49:32 -0800
Message-ID: <000101be116b$42ca0020$020039c1.cygnus.gnu-win32@young>
References: <[email-masked]>
Mime-Version: 1.0
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
To: "Mumit Khan" <[email-masked]>
Cc: "Gary V. Vaughan" <[email-masked]>,
        "Geoffrey Noer" <[email-masked]>,
        "Jorrit Tyberghein" <[email-masked]>,
        <[email-masked]>

It could works but not for me !!!
I have ~50000 lines or so automatically generated .s files from a virtual
machine called LLM3 and I must also have access to my assembler symbols.
For an historical reason, all public assembler symbols have NO leading '_'
(i.e. foo is
just called 'foo' not '_foo').
It's the way it works on Linux, SCO, Solaris, unixware, DOS, NT, ...
On unix systems, it just works fine with 'old' nlist interface or more
modern dlopen/dlsym calls. On DOS, NT I've made the same hugly hack with (2
additional links).
Here, of course, dlltool removes leading '_' to match the name you wrote,
not the internal one.
On link, I just got 'foo' undefined because it assumes it's _foo and _foo is
not defined.
I'm so sade.

> -----Original Message-----
> From: Mumit Khan [mailto:[email-masked]]
> Sent: Monday, November 16, 1998 8:16 AM
> To: Christian Jullien
> Cc: Gary V. Vaughan; Geoffrey Noer; Jorrit Tyberghein;
> [email-masked]
> Subject: RE: dlopen patch [was Re: dlopen]
>
>
> "Christian Jullien" <[email-masked]> writes:
> >
> > But it does not work since all symbols MUST be exported (am I
> right ?). In
> > my special case I can't export all symbols,
> > I've also a lot (>= 50000) generated assembler lines.
>
> That's correct. Of course, the solution is simple since all you need to
> do is to link with an export file (dlltool can create that easily), and
> with Gary's patch you can dlopen/dlsym the function quite easily.
>
> > If you have a better solution I will be happy to test it
> (and/or to improve
> > it).
>
> I'm attaching a trivial example (to run this, you have to have Gary's
> patch or wait for b20.1). Please let me know if this doesn't work for
> your application.
>
> btw, a good example for this is in Perl's configuration, where perl is
> built as an exportable executable. You can also use dllwrap (with a
> few extra semi-documented flags), but it's just as easy doing it using
> the simple Makefile included in my example.
>
> Regards,
> Mumit
>
>

-
For help on using this list (especially unsubscribing), send a message to
"[email-masked]" with one line of text: "help".