[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Mingw-cross-env-list] Status of build with shared libraries
From: |
Volker Grabsch |
Subject: |
Re: [Mingw-cross-env-list] Status of build with shared libraries |
Date: |
Mon, 21 Oct 2013 11:01:33 +0200 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
Tony Theodore schrieb:
> On 21/10/2013, at 12:32 AM, Peter Rockett <address@hidden> wrote:
> >
> >> is anyone really going to want multiple toolchains simultaneously?
> >
> > Erm... yes. For different projects. Two distinct toolchains imposes a
> > maintenance burden on users.
>
> I'm not sure what the maintenance burden is, you just run mxe as normal and
> end up with some prefixed compilers. So far, I've looked at building these in
> separate phases so the toolchains will be distinct. You will have either:
>
> i686-pc-mingw32.static-gcc
> i686-pc-mingw32.shared-gcc
>
> in your PATH, or
I'd strongly prefer this one. I had also thought of
replacing the dummy "-pc-" in the middle:
i686-static-mingw32-gcc
i686-shared-mingw32-gcc
However, that might be too much of a hack, so I
prefer the "i686-pc-mingw32.static" style.
> export PATH=~/mxe/usr/static/bin
> i686-pc-mingw32-gcc
>
> export PATH=~/mxe/usr/shared/bin
> i686-pc-mingw32-gcc
I don't think we should do it that way, except some
technical obstacles prevent us from doing the
"i686-pc-mingw32.static" style. See below.
> Static and shared libs can probably be built in a single pass (I don't have
> much experience with this), but the threading/exception variants can't.
In my experience, it is very hard to handle static and shared
builds in a single toolchain, even with just a handful of
libraries (let alone MXE).
I think it's much easier to have separate toolchains with
separate *.pc (pkg-config) scripts and without any ambiguity.
Mixing them could easily result in mixing shared and static
libraries in a build, at least accidentally. And fixing these
kind of issues is a major headache.
So in my opinion, static and shared builds should indeed be
considered completely separate toolchains.
The saving in build time by running fewer "./configure" scripts
cannot outweigh the headaches that arise from bugs about mixed
static/shared builds.
Regards,
Volker
--
Volker Grabsch
---<<(())>>---
- Re: [Mingw-cross-env-list] Status of build with shared libraries, John W. Eaton, 2013/10/16
- Re: [Mingw-cross-env-list] Status of build with shared libraries, Tony Theodore, 2013/10/15
- Re: [Mingw-cross-env-list] Status of build with shared libraries, Tony Theodore, 2013/10/20
- Re: [Mingw-cross-env-list] Status of build with shared libraries, Tony Theodore, 2013/10/20
- Re: [Mingw-cross-env-list] Status of build with shared libraries, Peter Rockett, 2013/10/20
- Re: [Mingw-cross-env-list] Status of build with shared libraries, Tony Theodore, 2013/10/20
- Re: [Mingw-cross-env-list] Status of build with shared libraries,
Volker Grabsch <=
- Re: [Mingw-cross-env-list] Status of build with shared libraries, Tony Theodore, 2013/10/21
- Re: [Mingw-cross-env-list] Status of build with shared libraries, Volker Grabsch, 2013/10/22
- Re: [Mingw-cross-env-list] Status of build with shared libraries, Tony Theodore, 2013/10/22
- Re: [Mingw-cross-env-list] Status of build with shared libraries, Volker Grabsch, 2013/10/22