[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: dll cross-compile, .libs/impgen is a win-exe, not a linux-binary
From: |
Guido Draheim |
Subject: |
Re: dll cross-compile, .libs/impgen is a win-exe, not a linux-binary |
Date: |
Wed, 20 Jun 2001 11:58:51 +0200 |
moin moin, Olly,
Olly Betts wrote:
>
> On Wed, Jun 20, 2001 at 03:23:18AM +0200, Guido Draheim wrote:
> > What is HOST_CC ? It has no default, and cross-gcc is the wrong cc.
>
> It's meant to point to a native compiler in precisely this situation to
> solve the problem of impgen getting cross-compiled and so being useless.
Yep, that was my guess, but it looked a bit stranded as there's
nothing else around that knows who he is...
>
> > Did now try with HOST_CC=/usr/bin/cc to get a working impgen.
> > Did not work either - look for the ".libs/.libs" part in the
> > output which is clearly wrong.
>
> The HOST_CC patch was from me, and it worked when applied. Looks like
> something has changed since and stopped it working.
*sigh*, okay then, I'll see if I can catch enough of the scheme
to fix that too.
>
> > HOST_CC is only used with impgen, no other reference. IIRC, there
> > are plans to have more binary compile-tools, which leasd to the
> > question whether there are plans for automatic support of HOST_CC
> > (whatever that is anyway)
>
> HOST_CC is also refered to in config.status, and apparently comes from gcc's
> bootstrapping process. The name CC_FOR_BUILD is preferable - see the
> discussion stemming from the first url below - perhaps libtool ought to
> change to this?
Just as you noted in your post, one will usually try to get away
with some "interesting" shell/sed/awk-macros, and it seems that we
were pretty much able to do that up to now. Especially most of the
dll import/export stuff is done with tricky productions on objdump
output, and otherwise it has somehow gotten to be integrated in the
famous "dlltool" - and just as PavelRoskin has stated back then,
it is allowed to simply `require` (pre-)existance of a fairly
uptodate dlltool/dllwrap pair that knows a "dlltool --impgen" mode.
Have ye talked to those guys, Olly?
>
> I did also produce an autoconf macro for probing for HOST_CC. Ideally this
> should be triggered automatically by AM_PROG_LIBTOOL when cross-compiling to
> windows is detected, but I don't think it got incorporated into libtool or
> autoconf (it's actually of general use for compiling build-time tools when
> cross-compiling).
>
> You can find the macro here:
>
> http://sources.redhat.com/ml/autoconf/1999-07/msg00089.html
Thanks for the reference, a nice thread on the topic, and easy macro too.
>
> There's also an entirely different macro for testing CC_FOR_BUILD here:
>
> http://www.gnu.org/software/ac-archive/Cross_Compilation/ac_prog_cc_for_build.html
>
> This one sets CFLAGS_FOR_BUILD, etc but seems to rely on the user setting
> CC_FOR_BUILD whereas mine actually has a reasonable stab at find a native
> compiler by itself.
>
wooohohowow, this is tricky stuff for an ac-macro, now I know why TomTromey
did mention a generic push/pop-compiler ac-operation back then. This does
even more push me to say, that the impgen-rule should better get integrated
into dlltool/dllwrap, - and barf out at anyone who does not have an uptodate
version of it.
Anyway, libtool.m4 and libtool-content are out of sync in this case,
it is clearly buggy, don't you think Gary? ;-)
cheers,
-- guido Edel sei der Mensch, hilfreich und gut
31:GCS/E/S/P C++$++++ ULHS L++w- N++@ d(+-) s+a- h.r(*@)>+++ y++ 5++X-
- dll compile, can not resolve with -module libs, Guido Draheim, 2001/06/19
- dll cross-compile, .libs/impgen is a win-exe, not a linux-binary, Guido Draheim, 2001/06/19
- Re: dll cross-compile, .libs/impgen is a win-exe, not a linux-binary, Guido Draheim, 2001/06/19
- Re: dll cross-compile, .libs/impgen is a win-exe, not a linux-binary, Olly Betts, 2001/06/20
- Re: dll cross-compile, .libs/impgen is a win-exe, not a linux-binary,
Guido Draheim <=
- Re: dll cross-compile, .libs/impgen is a win-exe, not a linux-binary, Gary V . Vaughan, 2001/06/20
- Re: dll cross-compile, .libs/impgen is a win-exe, not a linux-binary, Guido Draheim, 2001/06/20
- Re: dll cross-compile, .libs/impgen is a win-exe, not a linux-binary, Alexandre Oliva, 2001/06/21
Re: dll compile, can not resolve with -module libs, Guido Draheim, 2001/06/19
Re: dll compile, can not resolve with -module libs, Robert Collins, 2001/06/22