[mpich-discuss] How to configure MPICH build to create linux x86 cross-compiler for ARM?

Kenneth Raffenetti raffenet at mcs.anl.gov
Fri Jun 2 10:15:34 CDT 2017


Hi Alex,

One thing to understand is that MPICH does not actually build compiler 
tools, so the --target option is not used. mpicc and friends are only 
wrapper scripts. Here is how I was able to configure/build MPICH on my 
laptop (Ubuntu 16.10) to cross-compile binaries arm-linux-gnueabi. 
Fortran is disabled since it requires additional steps.

./configure --build=x86_64-linux-gnu --host=arm-linux-gnueabi 
CC=/usr/bin/arm-linux-gnueabi-gcc-6 CXX=/usr/bin/arm-linux-gnueabi-g++-6 
--disable-fortran

Ken

On 06/01/2017 10:22 AM, Alexander Rast wrote:
> I assume you mean from the build intended for the ARM targets. In any 
> case here they are.
> 
> On Thu, Jun 1, 2017 at 4:04 PM, Kenneth Raffenetti <raffenet at mcs.anl.gov 
> <mailto:raffenet at mcs.anl.gov>> wrote:
> 
>     Hi Alex,
> 
>     I don't have experience with this type of build, but I can try to
>     replicate it on a system here internally. Can you provide a couple
>     of artifacts first?
> 
>     1. the config.log file from the top-level build directory
>     2. the output of 'mpicc -show' from the installed build
> 
>     Thanks,
>     Ken
> 
>     On 06/01/2017 10:00 AM, Alexander Rast wrote:
> 
>         All,
> 
>         I'm trying to build MPICH so that I can cross-compile MPI
>         applications on my x86_64-linux system to run on an arm-linux
>         machine. I want to emphasise that this is different from
>         building a native ARM MPICH install that runs on ARM itself; the
>         intent is that an x86-linux 'root' process compiles ARM MPI
>         application binaries and distributes them to the ARM cores. I
>         have a separate build for compiling the MPI binaries that lie on
>         the root x86 system. I tried running configure with
>         --build=x86_64-linux-gnu --host=x86_64-linux-gnu
>         --target=arm-linux-gnueabi, but that didn't give me what I need.
>         If, meanwhile, I try to run mpicc off the native x86 build (the
>         MPICH installation used for running MPI applications on the root
>         x86 system) it complains that the target type specified in the
>         makefile (CFLAGS = -march=armv8-a -mtune=cortex-a53) isn't
>         supported. It's not clear how one creates this sort of 'hybrid'
>         build, running on one platform, compiling MPI applications for
>         another.
> 
> 
>         _______________________________________________
>         discuss mailing list discuss at mpich.org <mailto:discuss at mpich.org>
>         To manage subscription options or unsubscribe:
>         https://lists.mpich.org/mailman/listinfo/discuss
>         <https://lists.mpich.org/mailman/listinfo/discuss>
> 
> 
_______________________________________________
discuss mailing list     discuss at mpich.org
To manage subscription options or unsubscribe:
https://lists.mpich.org/mailman/listinfo/discuss


More information about the discuss mailing list