Search code examples
linuxmacosgcccross-compiling

Cross-compiler for Linux on Mac OS X?


I've been reading lots of documents on the internet about creating a cross compiler for linux on mac os x but can't seam to get any to work.

It seams as if no one can help me with the question: Getting GMP to work with GCC 4.5.2

Is there any easy'er way to create a cross compiler?


Solution

  • In order to build binaries for architectures different that your build host, you need far more than just a cross-compiler - you need a full-blown toolchain, which can be a real pain to create, as you probably discovered.

    A couple of approaches:

    • Use a proper Linux distribution in a virtual machine, such as VirtualBox. If you only want to build binaries for Linux/i386 on an MacOSX/x86_64 host, this is - in my opinion - the easiest, safest and most clean solution. It is not a cross-compiler, of course, but it works and it has the added advantage that you can actually test your executables.

    • Use a script such crosstool-NG (a descendant of the original crosstool) to automatically build the toolchain - definitely easier than building it on your own, although you may have to compromise for slightly older compiler versions.