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] non mingw target difficulty estimate


From: Tony Theodore
Subject: Re: [Mingw-cross-env-list] non mingw target difficulty estimate
Date: Sun, 23 Mar 2014 14:10:41 +1100

On 20 Mar 2014, at 16:35, Volker Grabsch <address@hidden> wrote:

> Don Bright schrieb:
>> Dear MXE
>> 
>> First, thanks for your excellent project. It enabled OpenSCAD to ship win64
>> binaries for the new release.

You’re welcome, thanks for the feedback - it’s always good to hear about people 
using MXE successfully.

>> I have a question on the feasability of a non-mingw TARGET. I am interested
>> in cross-building target i686-pc-linux-gnu binaries from an ARM-based build
>> machine.

I’d have expected going the other way - isn’t an ARM-based build machine going 
to be very slow?

>> What is the level of difficulty on a scale from one to ten (most)? Thanks.
> 
> I'm not sure if you should use MXE at all (or any other cross
> compiling environment, for that matter).

I agree for most practical purposes, but it would be an interesting exercise 
(if you had the time!)

[…]

> So on these system, you have only two steps to go: 1) Build
> a cross compiler, and 2) Cross compile your application.
> Maybe there's a step 1b) for creating some pkg-config stuff.
> 
> You could certainly use MXE for step 1),

This step should be fairly straightforward, MXE is flexible enough to support 
it, and more than you need to know is documented at 
http://www.linuxfromscratch.org/. The hard part would be knowing what isn’t 
applicable and stripping those instructions down to the basic four stages:

  - linux headers
  - binutils and minimal gcc
  - glibc runtime
  - full cross gcc

You can use the existing *-w64-* toolchain as a template, the only other hurdle 
would be choosing versions. On a scale, this could be between 4-6, but it’s a 
well-travelled path.

> but that would
> be just a tiny part of MXE. However, building all your
> dependencies with MXE doesn't make any sense on those
> platform. And that may indeed cause some trouble, as many
> packages are built with Windows specific patches in MXE.
> You almost certainly don't want these patches when targeting
> systems like i686-pc-linux-gnu.

This is likely to be the hardest part, trying to get a full enough 
understanding of the code and build systems to make those patches 
cross-platform will be difficult. This could easily turn into 9-10.

Cheers,

Tony




reply via email to

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