Note that the original author of the ARM support chimed in on this on the devel list:
http://www.open-mpi.org/community/lists/devel/2013/01/11955.php On Jan 21, 2013, at 6:50 AM, George Bosilca <bosi...@icl.utk.edu> wrote: > Great, I pushed everything upstream: > - trunk (r27882) > - prepared a patch for the 1.6 > (https://svn.open-mpi.org/trac/ompi/ticket/3469) > - requested a CMR for the 1.7 (https://svn.open-mpi.org/trac/ompi/ticket/3470) > > Thanks for your help, > George. > > > On Jan 21, 2013, at 07:56 , Lee Eric <openlinuxsou...@gmail.com> wrote: > >> Thank you mate. This patch works quite well on my Raspberry Pi w/o any >> error. Can we put them in the upstream? >> >> Thanks. >> >> Eric >> >> On Mon, Jan 21, 2013 at 12:07 AM, George Bosilca <bosi...@icl.utk.edu> wrote: >>> Eric, >>> >>> What do you think about the patch attached to ticket #3469 >>> (https://svn.open-mpi.org/trac/ompi/ticket/3469). We might blend the two >>> patches together, and have all the different ARM versions covered. >>> >>> Thanks, >>> George. >>> >>> On Jan 20, 2013, at 05:55 , Lee Eric <openlinuxsou...@gmail.com> wrote: >>> >>>> Hi, >>>> >>>> The above issue fixed w/ this patch I used: >>>> https://raw.github.com/sebhtml/patches/master/openmpi/Raspberry-Pi-openmpi-1.6.2.patch >>>> >>>> Is that possible OpenMPI can contain this patch in the future? >>>> >>>> Thanks. >>>> >>>> On Sun, Jan 20, 2013 at 3:13 AM, Lee Eric <openlinuxsou...@gmail.com> >>>> wrote: >>>>> Hi, >>>>> >>>>> I just use --disable-mpif77 and --disable-mpif90 to let configure run >>>>> well. However, I know it's only tough workround. After configured >>>>> well, I encounter following error when run make: >>>>> >>>>> Making all in config >>>>> make[1]: Entering directory `/home/huli/Projects/openmpi-1.6.3/config' >>>>> make[1]: Nothing to be done for `all'. >>>>> make[1]: Leaving directory `/home/huli/Projects/openmpi-1.6.3/config' >>>>> Making all in contrib >>>>> make[1]: Entering directory `/home/huli/Projects/openmpi-1.6.3/contrib' >>>>> make[1]: Nothing to be done for `all'. >>>>> make[1]: Leaving directory `/home/huli/Projects/openmpi-1.6.3/contrib' >>>>> Making all in opal >>>>> make[1]: Entering directory `/home/huli/Projects/openmpi-1.6.3/opal' >>>>> Making all in include >>>>> make[2]: Entering directory >>>>> `/home/huli/Projects/openmpi-1.6.3/opal/include' >>>>> make all-am >>>>> make[3]: Entering directory >>>>> `/home/huli/Projects/openmpi-1.6.3/opal/include' >>>>> make[3]: Leaving directory >>>>> `/home/huli/Projects/openmpi-1.6.3/opal/include' >>>>> make[2]: Leaving directory >>>>> `/home/huli/Projects/openmpi-1.6.3/opal/include' >>>>> Making all in libltdl >>>>> make[2]: Entering directory >>>>> `/home/huli/Projects/openmpi-1.6.3/opal/libltdl' >>>>> make all-am >>>>> make[3]: Entering directory >>>>> `/home/huli/Projects/openmpi-1.6.3/opal/libltdl' >>>>> /bin/sh ./libtool --tag=CC --mode=compile >>>>> armv6-rpi-linux-gnueabi-gcc -DHAVE_CONFIG_H -I. >>>>> -DLT_CONFIG_H='<config.h>' -DLTDL -I. -I. -Ilibltdl -I./libltdl >>>>> -I./libltdl >>>>> -I/home/huli/Projects/openmpi-1.6.3/opal/mca/hwloc/hwloc132/hwloc/include >>>>> -I/usr/include/infiniband -I/usr/include/infiniband -Ofast >>>>> -mfpu=vfp -mfloat-abi=hard -MT dlopen.lo -MD -MP -MF .deps/dlopen.Tpo >>>>> -c -o dlopen.lo `test -f 'loaders/dlopen.c' || echo >>>>> './'`loaders/dlopen.c >>>>> /bin/sh ./libtool --tag=CC --mode=compile >>>>> armv6-rpi-linux-gnueabi-gcc -DHAVE_CONFIG_H -I. -DLTDLOPEN=libltdlc >>>>> -DLT_CONFIG_H='<config.h>' -DLTDL -I. -I. -Ilibltdl -I./libltdl >>>>> -I./libltdl >>>>> -I/home/huli/Projects/openmpi-1.6.3/opal/mca/hwloc/hwloc132/hwloc/include >>>>> -I/usr/include/infiniband -I/usr/include/infiniband -Ofast >>>>> -mfpu=vfp -mfloat-abi=hard -MT libltdlc_la-preopen.lo -MD -MP -MF >>>>> .deps/libltdlc_la-preopen.Tpo -c -o libltdlc_la-preopen.lo `test -f >>>>> 'loaders/preopen.c' || echo './'`loaders/preopen.c >>>>> /bin/sh ./libtool --tag=CC --mode=compile >>>>> armv6-rpi-linux-gnueabi-gcc -DHAVE_CONFIG_H -I. -DLTDLOPEN=libltdlc >>>>> -DLT_CONFIG_H='<config.h>' -DLTDL -I. -I. -Ilibltdl -I./libltdl >>>>> -I./libltdl >>>>> -I/home/huli/Projects/openmpi-1.6.3/opal/mca/hwloc/hwloc132/hwloc/include >>>>> -I/usr/include/infiniband -I/usr/include/infiniband -Ofast >>>>> -mfpu=vfp -mfloat-abi=hard -MT libltdlc_la-lt__alloc.lo -MD -MP -MF >>>>> .deps/libltdlc_la-lt__alloc.Tpo -c -o libltdlc_la-lt__alloc.lo `test >>>>> -f 'lt__alloc.c' || echo './'`lt__alloc.c >>>>> /bin/sh ./libtool --tag=CC --mode=compile >>>>> armv6-rpi-linux-gnueabi-gcc -DHAVE_CONFIG_H -I. -DLTDLOPEN=libltdlc >>>>> -DLT_CONFIG_H='<config.h>' -DLTDL -I. -I. -Ilibltdl -I./libltdl >>>>> -I./libltdl >>>>> -I/home/huli/Projects/openmpi-1.6.3/opal/mca/hwloc/hwloc132/hwloc/include >>>>> -I/usr/include/infiniband -I/usr/include/infiniband -Ofast >>>>> -mfpu=vfp -mfloat-abi=hard -MT libltdlc_la-lt_dlloader.lo -MD -MP -MF >>>>> .deps/libltdlc_la-lt_dlloader.Tpo -c -o libltdlc_la-lt_dlloader.lo >>>>> `test -f 'lt_dlloader.c' || echo './'`lt_dlloader.c >>>>> /bin/sh ./libtool --tag=CC --mode=compile >>>>> armv6-rpi-linux-gnueabi-gcc -DHAVE_CONFIG_H -I. -DLTDLOPEN=libltdlc >>>>> -DLT_CONFIG_H='<config.h>' -DLTDL -I. -I. -Ilibltdl -I./libltdl >>>>> -I./libltdl >>>>> -I/home/huli/Projects/openmpi-1.6.3/opal/mca/hwloc/hwloc132/hwloc/include >>>>> -I/usr/include/infiniband -I/usr/include/infiniband -Ofast >>>>> -mfpu=vfp -mfloat-abi=hard -MT libltdlc_la-lt_error.lo -MD -MP -MF >>>>> .deps/libltdlc_la-lt_error.Tpo -c -o libltdlc_la-lt_error.lo `test -f >>>>> 'lt_error.c' || echo './'`lt_error.c >>>>> /bin/sh ./libtool --tag=CC --mode=compile >>>>> armv6-rpi-linux-gnueabi-gcc -DHAVE_CONFIG_H -I. -DLTDLOPEN=libltdlc >>>>> -DLT_CONFIG_H='<config.h>' -DLTDL -I. -I. -Ilibltdl -I./libltdl >>>>> -I./libltdl >>>>> -I/home/huli/Projects/openmpi-1.6.3/opal/mca/hwloc/hwloc132/hwloc/include >>>>> -I/usr/include/infiniband -I/usr/include/infiniband -Ofast >>>>> -mfpu=vfp -mfloat-abi=hard -MT libltdlc_la-ltdl.lo -MD -MP -MF >>>>> .deps/libltdlc_la-ltdl.Tpo -c -o libltdlc_la-ltdl.lo `test -f 'ltdl.c' >>>>> || echo './'`ltdl.c >>>>> /bin/sh ./libtool --tag=CC --mode=compile >>>>> armv6-rpi-linux-gnueabi-gcc -DHAVE_CONFIG_H -I. -DLTDLOPEN=libltdlc >>>>> -DLT_CONFIG_H='<config.h>' -DLTDL -I. -I. -Ilibltdl -I./libltdl >>>>> -I./libltdl >>>>> -I/home/huli/Projects/openmpi-1.6.3/opal/mca/hwloc/hwloc132/hwloc/include >>>>> -I/usr/include/infiniband -I/usr/include/infiniband -Ofast >>>>> -mfpu=vfp -mfloat-abi=hard -MT libltdlc_la-slist.lo -MD -MP -MF >>>>> .deps/libltdlc_la-slist.Tpo -c -o libltdlc_la-slist.lo `test -f >>>>> 'slist.c' || echo './'`slist.c >>>>> /bin/sh ./libtool --tag=CC --mode=compile >>>>> armv6-rpi-linux-gnueabi-gcc -DHAVE_CONFIG_H -I. >>>>> -DLT_CONFIG_H='<config.h>' -DLTDL -I. -I. -Ilibltdl -I./libltdl >>>>> -I./libltdl >>>>> -I/home/huli/Projects/openmpi-1.6.3/opal/mca/hwloc/hwloc132/hwloc/include >>>>> -I/usr/include/infiniband -I/usr/include/infiniband -Ofast >>>>> -mfpu=vfp -mfloat-abi=hard -MT lt__strl.lo -MD -MP -MF >>>>> .deps/lt__strl.Tpo -c -o lt__strl.lo lt__strl.c >>>>> libtool: compile: armv6-rpi-linux-gnueabi-gcc -DHAVE_CONFIG_H -I. >>>>> -DLTDLOPEN=libltdlc "-DLT_CONFIG_H=<config.h>" -DLTDL -I. -I. >>>>> -Ilibltdl -I./libltdl -I./libltdl >>>>> -I/home/huli/Projects/openmpi-1.6.3/opal/mca/hwloc/hwloc132/hwloc/include >>>>> -I/usr/include/infiniband -I/usr/include/infiniband -Ofast -mfpu=vfp >>>>> -mfloat-abi=hard -MT libltdlc_la-lt__alloc.lo -MD -MP -MF >>>>> .deps/libltdlc_la-lt__alloc.Tpo -c lt__alloc.c -fPIC -DPIC -o >>>>> .libs/libltdlc_la-lt__alloc.o >>>>> libtool: compile: armv6-rpi-linux-gnueabi-gcc -DHAVE_CONFIG_H -I. >>>>> -DLTDLOPEN=libltdlc "-DLT_CONFIG_H=<config.h>" -DLTDL -I. -I. >>>>> -Ilibltdl -I./libltdl -I./libltdl >>>>> -I/home/huli/Projects/openmpi-1.6.3/opal/mca/hwloc/hwloc132/hwloc/include >>>>> -I/usr/include/infiniband -I/usr/include/infiniband -Ofast -mfpu=vfp >>>>> -mfloat-abi=hard -MT libltdlc_la-preopen.lo -MD -MP -MF >>>>> .deps/libltdlc_la-preopen.Tpo -c loaders/preopen.c -fPIC -DPIC -o >>>>> .libs/libltdlc_la-preopen.o >>>>> libtool: compile: armv6-rpi-linux-gnueabi-gcc -DHAVE_CONFIG_H -I. >>>>> -DLTDLOPEN=libltdlc "-DLT_CONFIG_H=<config.h>" -DLTDL -I. -I. >>>>> -Ilibltdl -I./libltdl -I./libltdl >>>>> -I/home/huli/Projects/openmpi-1.6.3/opal/mca/hwloc/hwloc132/hwloc/include >>>>> -I/usr/include/infiniband -I/usr/include/infiniband -Ofast -mfpu=vfp >>>>> -mfloat-abi=hard -MT libltdlc_la-lt_error.lo -MD -MP -MF >>>>> .deps/libltdlc_la-lt_error.Tpo -c lt_error.c -fPIC -DPIC -o >>>>> .libs/libltdlc_la-lt_error.o >>>>> libtool: compile: armv6-rpi-linux-gnueabi-gcc -DHAVE_CONFIG_H -I. >>>>> "-DLT_CONFIG_H=<config.h>" -DLTDL -I. -I. -Ilibltdl -I./libltdl >>>>> -I./libltdl >>>>> -I/home/huli/Projects/openmpi-1.6.3/opal/mca/hwloc/hwloc132/hwloc/include >>>>> -I/usr/include/infiniband -I/usr/include/infiniband -Ofast -mfpu=vfp >>>>> -mfloat-abi=hard -MT lt__strl.lo -MD -MP -MF .deps/lt__strl.Tpo -c >>>>> lt__strl.c -fPIC -DPIC -o .libs/lt__strl.o >>>>> libtool: compile: armv6-rpi-linux-gnueabi-gcc -DHAVE_CONFIG_H -I. >>>>> "-DLT_CONFIG_H=<config.h>" -DLTDL -I. -I. -Ilibltdl -I./libltdl >>>>> -I./libltdl >>>>> -I/home/huli/Projects/openmpi-1.6.3/opal/mca/hwloc/hwloc132/hwloc/include >>>>> -I/usr/include/infiniband -I/usr/include/infiniband -Ofast -mfpu=vfp >>>>> -mfloat-abi=hard -MT dlopen.lo -MD -MP -MF .deps/dlopen.Tpo -c >>>>> loaders/dlopen.c -fPIC -DPIC -o .libs/dlopen.o >>>>> libtool: compile: armv6-rpi-linux-gnueabi-gcc -DHAVE_CONFIG_H -I. >>>>> -DLTDLOPEN=libltdlc "-DLT_CONFIG_H=<config.h>" -DLTDL -I. -I. >>>>> -Ilibltdl -I./libltdl -I./libltdl >>>>> -I/home/huli/Projects/openmpi-1.6.3/opal/mca/hwloc/hwloc132/hwloc/include >>>>> -I/usr/include/infiniband -I/usr/include/infiniband -Ofast -mfpu=vfp >>>>> -mfloat-abi=hard -MT libltdlc_la-lt_dlloader.lo -MD -MP -MF >>>>> .deps/libltdlc_la-lt_dlloader.Tpo -c lt_dlloader.c -fPIC -DPIC -o >>>>> .libs/libltdlc_la-lt_dlloader.o >>>>> libtool: compile: armv6-rpi-linux-gnueabi-gcc -DHAVE_CONFIG_H -I. >>>>> -DLTDLOPEN=libltdlc "-DLT_CONFIG_H=<config.h>" -DLTDL -I. -I. >>>>> -Ilibltdl -I./libltdl -I./libltdl >>>>> -I/home/huli/Projects/openmpi-1.6.3/opal/mca/hwloc/hwloc132/hwloc/include >>>>> -I/usr/include/infiniband -I/usr/include/infiniband -Ofast -mfpu=vfp >>>>> -mfloat-abi=hard -MT libltdlc_la-ltdl.lo -MD -MP -MF >>>>> .deps/libltdlc_la-ltdl.Tpo -c ltdl.c -fPIC -DPIC -o >>>>> .libs/libltdlc_la-ltdl.o >>>>> libtool: compile: armv6-rpi-linux-gnueabi-gcc -DHAVE_CONFIG_H -I. >>>>> -DLTDLOPEN=libltdlc "-DLT_CONFIG_H=<config.h>" -DLTDL -I. -I. >>>>> -Ilibltdl -I./libltdl -I./libltdl >>>>> -I/home/huli/Projects/openmpi-1.6.3/opal/mca/hwloc/hwloc132/hwloc/include >>>>> -I/usr/include/infiniband -I/usr/include/infiniband -Ofast -mfpu=vfp >>>>> -mfloat-abi=hard -MT libltdlc_la-slist.lo -MD -MP -MF >>>>> .deps/libltdlc_la-slist.Tpo -c slist.c -fPIC -DPIC -o >>>>> .libs/libltdlc_la-slist.o >>>>> mv -f .deps/dlopen.Tpo .deps/dlopen.Plo >>>>> /bin/sh ./libtool --tag=CC --mode=link armv6-rpi-linux-gnueabi-gcc >>>>> -Ofast -mfpu=vfp -mfloat-abi=hard -module -avoid-version -o dlopen.la >>>>> dlopen.lo -ldl -ldl -lrt -lnsl -lutil -lm >>>>> mv -f .deps/libltdlc_la-lt__alloc.Tpo .deps/libltdlc_la-lt__alloc.Plo >>>>> mv -f .deps/lt__strl.Tpo .deps/lt__strl.Plo >>>>> mv -f .deps/libltdlc_la-lt_error.Tpo .deps/libltdlc_la-lt_error.Plo >>>>> mv -f .deps/libltdlc_la-preopen.Tpo .deps/libltdlc_la-preopen.Plo >>>>> mv -f .deps/libltdlc_la-lt_dlloader.Tpo .deps/libltdlc_la-lt_dlloader.Plo >>>>> libtool: link: armv6-rpi-linux-gnueabi-ar cru .libs/dlopen.a >>>>> .libs/dlopen.o >>>>> libtool: link: armv6-rpi-linux-gnueabi-ranlib .libs/dlopen.a >>>>> mv -f .deps/libltdlc_la-slist.Tpo .deps/libltdlc_la-slist.Plo >>>>> libtool: link: ( cd ".libs" && rm -f "dlopen.la" && ln -s >>>>> "../dlopen.la" "dlopen.la" ) >>>>> mv -f .deps/libltdlc_la-ltdl.Tpo .deps/libltdlc_la-ltdl.Plo >>>>> /bin/sh ./libtool --tag=CC --mode=link armv6-rpi-linux-gnueabi-gcc >>>>> -Ofast -mfpu=vfp -mfloat-abi=hard -no-undefined -dlpreopen dlopen.la >>>>> -o libltdlc.la libltdlc_la-preopen.lo libltdlc_la-lt__alloc.lo >>>>> libltdlc_la-lt_dlloader.lo libltdlc_la-lt_error.lo libltdlc_la-ltdl.lo >>>>> libltdlc_la-slist.lo lt__strl.lo -ldl -lrt -lnsl -lutil -lm >>>>> libtool: link: rm -f .libs/libltdlc.nm .libs/libltdlc.nmS >>>>> .libs/libltdlc.nmT >>>>> libtool: link: (cd .libs && armv6-rpi-linux-gnueabi-gcc -Ofast >>>>> -mfpu=vfp -mfloat-abi=hard -c -fno-builtin -fPIC -DPIC "libltdlcS.c") >>>>> libtool: link: rm -f ".libs/libltdlcS.c" ".libs/libltdlc.nm" >>>>> ".libs/libltdlc.nmS" ".libs/libltdlc.nmT" >>>>> libtool: link: (cd .libs/libltdlc.lax/dlopen.a && >>>>> armv6-rpi-linux-gnueabi-ar x >>>>> "/home/huli/Projects/openmpi-1.6.3/opal/libltdl/./.libs/dlopen.a") >>>>> libtool: link: armv6-rpi-linux-gnueabi-ar cru .libs/libltdlc.a >>>>> .libs/libltdlc_la-preopen.o .libs/libltdlc_la-lt__alloc.o >>>>> .libs/libltdlc_la-lt_dlloader.o .libs/libltdlc_la-lt_error.o >>>>> .libs/libltdlc_la-ltdl.o .libs/libltdlc_la-slist.o .libs/lt__strl.o >>>>> .libs/libltdlcS.o .libs/libltdlc.lax/dlopen.a/dlopen.o >>>>> libtool: link: armv6-rpi-linux-gnueabi-ranlib .libs/libltdlc.a >>>>> libtool: link: rm -fr .libs/libltdlc.lax >>>>> libtool: link: ( cd ".libs" && rm -f "libltdlc.la" && ln -s >>>>> "../libltdlc.la" "libltdlc.la" ) >>>>> make[3]: Leaving directory >>>>> `/home/huli/Projects/openmpi-1.6.3/opal/libltdl' >>>>> make[2]: Leaving directory >>>>> `/home/huli/Projects/openmpi-1.6.3/opal/libltdl' >>>>> Making all in asm >>>>> make[2]: Entering directory `/home/huli/Projects/openmpi-1.6.3/opal/asm' >>>>> rm -f atomic-asm.S >>>>> CC asm.lo >>>>> ln -s "../../opal/asm/generated/atomic-local.s" atomic-asm.S >>>>> CPPAS atomic-asm.lo >>>>> atomic-asm.S: Assembler messages: >>>>> atomic-asm.S:7: Error: selected processor does not support ARM mode `dmb' >>>>> atomic-asm.S:15: Error: selected processor does not support ARM mode `dmb' >>>>> atomic-asm.S:23: Error: selected processor does not support ARM mode `dmb' >>>>> atomic-asm.S:55: Error: selected processor does not support ARM mode `dmb' >>>>> atomic-asm.S:70: Error: selected processor does not support ARM mode `dmb' >>>>> make[2]: *** [atomic-asm.lo] Error 1 >>>>> make[2]: *** Waiting for unfinished jobs.... >>>>> make[2]: Leaving directory `/home/huli/Projects/openmpi-1.6.3/opal/asm' >>>>> make[1]: *** [all-recursive] Error 1 >>>>> make[1]: Leaving directory `/home/huli/Projects/openmpi-1.6.3/opal' >>>>> make: *** [all-recursive] Error 1 >>>>> >>>>> Here's my toolchain's gcc details. >>>>> >>>>> [huli@localhost openmpi-1.6.3]$ armv6-rpi-linux-gnueabi-gcc -v >>>>> Using built-in specs. >>>>> COLLECT_GCC=armv6-rpi-linux-gnueabi-gcc >>>>> COLLECT_LTO_WRAPPER=/home/huli/Projects/arm-devel-rpi/libexec/gcc/arm-rpi-linux-gnueabi/4.7.3/lto-wrapper >>>>> Target: arm-rpi-linux-gnueabi >>>>> Configured with: >>>>> /home/huli/Projects/ct-rpi/.build/src/gcc-linaro-4.7-2012.10/configure >>>>> --build=x86_64-build_unknown-linux-gnu >>>>> --host=x86_64-build_unknown-linux-gnu --target=arm-rpi-linux-gnueabi >>>>> --prefix=/home/huli/Projects/arm-devel-rpi >>>>> --with-sysroot=/home/huli/Projects/arm-devel-rpi/arm-rpi-linux-gnueabi/sysroot >>>>> --enable-languages=c,c++,fortran --with-arch=armv6zk >>>>> --with-cpu=arm1176jzf-s --with-tune=arm1176jzf-s --with-fpu=vfp >>>>> --with-float=hard --with-pkgversion='crosstool-NG 1.17.0' >>>>> --enable-__cxa_atexit --disable-libmudflap --disable-libgomp >>>>> --disable-libssp --disable-libquadmath --disable-libquadmath-support >>>>> --with-gmp=/home/huli/Projects/ct-rpi/.build/arm-rpi-linux-gnueabi/buildtools >>>>> --with-mpfr=/home/huli/Projects/ct-rpi/.build/arm-rpi-linux-gnueabi/buildtools >>>>> --with-mpc=/home/huli/Projects/ct-rpi/.build/arm-rpi-linux-gnueabi/buildtools >>>>> --with-ppl=/home/huli/Projects/ct-rpi/.build/arm-rpi-linux-gnueabi/buildtools >>>>> --with-cloog=/home/huli/Projects/ct-rpi/.build/arm-rpi-linux-gnueabi/buildtools >>>>> --with-libelf=/home/huli/Projects/ct-rpi/.build/arm-rpi-linux-gnueabi/buildtools >>>>> --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic >>>>> -lm >>>>> -L/home/huli/Projects/ct-rpi/.build/arm-rpi-linux-gnueabi/buildtools/lib >>>>> -lpwl' --enable-threads=posix --enable-target-optspace --disable-nls >>>>> --disable-multilib >>>>> --with-local-prefix=/home/huli/Projects/arm-devel-rpi/arm-rpi-linux-gnueabi/sysroot >>>>> --enable-c99 --enable-long-long --with-float=hard >>>>> Thread model: posix >>>>> gcc version 4.7.3 20121001 (prerelease) (crosstool-NG 1.17.0) >>>>> >>>>> Anyone have idea? >>>>> >>>>> Thanks. >>>>> >>>>> Eric >>>>> >>>>> On Sun, Jan 20, 2013 at 2:05 AM, Lee Eric <openlinuxsou...@gmail.com> >>>>> wrote: >>>>>> Hi, >>>>>> >>>>>> The cross-compile issue I fixed. Check following source code: >>>>>> opal_config_asm.m4:897: [AC_MSG_ERROR([No atomic primitives available >>>>>> for $host])]) >>>>>> >>>>>> It seems that checks the toolchain's tuple is one of: armv7* or armv6* >>>>>> or armv5*. I have recompiled my toolchain and no such error occurred. >>>>>> However, I hit another issue about fortran as configure running. >>>>>> >>>>>> *** Fortran 90/95 compiler >>>>>> checking for armv6-rpi-linux-gnueabi-gfortran... >>>>>> armv6-rpi-linux-gnueabi-gfortran >>>>>> checking whether we are using the GNU Fortran compiler... yes >>>>>> checking whether armv6-rpi-linux-gnueabi-gfortran accepts -g... yes >>>>>> checking if Fortran 77 compiler works... links (cross compiling) >>>>>> checking armv6-rpi-linux-gnueabi-gfortran external symbol >>>>>> convention... single underscore >>>>>> checking if C and Fortran 77 are link compatible... yes >>>>>> checking to see if F77 compiler likes the C++ exception flags... >>>>>> skipped (no C++ exceptions flags) >>>>>> checking to see if mpif77/mpif90 compilers need additional linker >>>>>> flags... none >>>>>> checking if Fortran 77 compiler supports CHARACTER... yes >>>>>> checking size of Fortran 77 CHARACTER... configure: error: Can not >>>>>> determine size of CHARACTER when cross-compiling >>>>>> >>>>>> Any hint? Thanks. >>>>>> >>>>>> Eric >>>>>> >>>>>> On Sat, Jan 19, 2013 at 10:08 PM, Lee Eric <openlinuxsou...@gmail.com> >>>>>> wrote: >>>>>>> Any heads up? Thanks. >>>>>>> >>>>>>> On Fri, Jan 18, 2013 at 5:28 AM, Jeff Squyres (jsquyres) >>>>>>> <jsquy...@cisco.com> wrote: >>>>>>>> On Jan 16, 2013, at 6:41 AM, Leif Lindholm <leif.lindh...@arm.com> >>>>>>>> wrote: >>>>>>>> >>>>>>>>> That isn't, technically speaking, correct for the Raspberry Pi - but >>>>>>>>> it is a workaround if you know you will never actually use the asm >>>>>>>>> implementations of the atomics, but only the inline C ones.. >>>>>>>>> >>>>>>>>> This sort of hides the problem that the dedicated barrier >>>>>>>>> instructions were not available in ARMv6 (it used "system control >>>>>>>>> coprocessor operations" instead. >>>>>>>>> >>>>>>>>> If you ever executed the asm implementation, you would trigger an >>>>>>>>> undefined instruction exception on the Pi. >>>>>>>> >>>>>>>> Hah; sweet. Ok. >>>>>>>> >>>>>>>> So what's the right answer? Would it be acceptable to use a no-op for >>>>>>>> this operation on such architectures? >>>>>>>> >>>>>>>> -- >>>>>>>> Jeff Squyres >>>>>>>> jsquy...@cisco.com >>>>>>>> For corporate legal information go to: >>>>>>>> http://www.cisco.com/web/about/doing_business/legal/cri/ >>>>>>>> >>>>>>>> >>>>>>>> _______________________________________________ >>>>>>>> users mailing list >>>>>>>> us...@open-mpi.org >>>>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/users >>>> _______________________________________________ >>>> users mailing list >>>> us...@open-mpi.org >>>> http://www.open-mpi.org/mailman/listinfo.cgi/users >>> >>> >>> _______________________________________________ >>> users mailing list >>> us...@open-mpi.org >>> http://www.open-mpi.org/mailman/listinfo.cgi/users >> _______________________________________________ >> users mailing list >> us...@open-mpi.org >> http://www.open-mpi.org/mailman/listinfo.cgi/users > > > _______________________________________________ > users mailing list > us...@open-mpi.org > http://www.open-mpi.org/mailman/listinfo.cgi/users -- Jeff Squyres jsquy...@cisco.com For corporate legal information go to: http://www.cisco.com/web/about/doing_business/legal/cri/