mingw-cross-env-list
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Mingw-cross-env-list] Question on cross-compiling boost context lib


From: Jack Kumba
Subject: Re: [Mingw-cross-env-list] Question on cross-compiling boost context library
Date: Fri, 3 Feb 2017 09:18:50 +0100

Thanks for the answer but it seems I still don't have the answer to my question.

MXE claims to cross-compile sucessfully boost context library version 1.60.0 for windows 32-bit on linux 64-bit but when I try to compile it with

b2 --with-context --prefix=/home/jagdish/COMMELEC/prerequisits/real_boost_installation_dir/ --user-config=user-config.jamĀ  toolset=gcc-mingw target-os=windows variant=releaseĀ  install

where my user-config.jam file contains
using gcc : mingw : i686-w64-mingw32-g++ : ;

I get the following error:
libs/context/src/asm/make_i386_sysv_elf_gas.S:23: Error: junk at end of line, first unrecognized character is `m'

It seems like the windows assembler is not ported to run on linux to cross-compile...

Now, my question is how did the MXE project succeed to cross-compile the boost context library for 32-bit windows on linux 64-bit?

Cheers,
Jack


On Fri, Feb 3, 2017 at 3:05 AM, Nagaev Boris <address@hidden> wrote:
Hey,

MXE provides GNU assembler (usr/bin/<target>-as). I suspect that it is
not what boost.context needs though...

Current version of boost in MXE is 1.60 and it builds on all my 64 bit
Linux machines (Debian) without errors. I do not use boost.context so
I don't know if it actually works. There is an open bug about support
of exceptions inside coroutines of boost.context [1].

I have tried to update boost to 1.62 and it failed with linking errors
because of boost.context [2]. There is a pull request [3] for
boost.context that is reported to fix it for release but not for
debug. It doesn't work for me (see my comments there) and it doesn't
look like a correct solution. According to one of comments, things are
the same in 1.63.

So I think that support of boost.context in MXE is broken if any.
Maybe we should disable it explicitly not to confuse people?

[1] https://github.com/mxe/mxe/issues/1559
[2] https://github.com/mxe/mxe/pull/1549
[3] https://github.com/boostorg/serialization/pull/42

On Thu, Feb 2, 2017 at 8:10 PM, Jack Kumba <address@hidden> wrote:
> Hello,
>
> I cannot cross-compile boost context library for windows 32 on my ubuntu 64
> bit using mingw32-w4.
> The compilation stops with some assembler errors about invalid charcters at
> the
> end of the file.
>
> However, your project seems to cross-compile boost version 1.60. However, I
> wonder how could you do that because the windows version of the assembler is
> not ported on linux.
> Is it a stripped version of boost context library that you're compiling?
>
> I tried to use your compiled boost context library but I see some "undefined
> references" error.
>
> Did somebody succeed to cross-compile boost libraries for 32-bit windows on
> linux 64-bit?
>
> Thanks,
> Jack



--
Best regards,
Boris Nagaev


reply via email to

[Prev in Thread] Current Thread [Next in Thread]