Hi,

The problem has been fixed.

$CHPL_HOME/runtime/etc/Makefile.comm-gasnet

has a line

LD = mpicxx

which I had to change to mpiicpc for the issue to be fixed. Chapel seems to
be hardcoding the c++ mpi compiler for this particular case. It might be
better to be able to set this via the environmet, without modifying the
files.

Thanks,
Sweta

On Thu, Jul 26, 2018 at 3:21 PM, Sweta Yamini <[email protected]>
wrote:

> Hi,
>
> I am trying to build and run chapel for multilocale using GASNet over mpi
> substrate and using intel family of compilers. The setting I have manually
> used are
>
> export CHPL_HOST_COMPILER=intel
> export CHPL_TARGET_COMPILER=intel
> export CHPL_COMM=gasnet
> export CHPL_COMM_SUBSTRATE=mpi
> export CHPL_LAUNCHER=gasnetrun_mpi
>
> The compilation fails with these settings. I found that the problem is
> intel compilers provided mpicc and mpicxx use gcc and g++ and I need to use
> mpiicc and mpiicpc for intel compilers. Manually also setting MPI_CC=mpiicc
> fixes the compilation issue and chapel builds successfully.
>
> However, when I run chapel, i get the error
>
> $ make check
> [Info] Running minimal test script: $CHPL_HOME/util/test/checkChplInstall
> [Info] Found executable chpl in XXXXX/chapel-1.17.1/bin/linux64/chpl.
> [Info] Found $CHPL_HOME directory: XXXXX/chapel-1.17.1
> [Info] XXXX/.chpl does not exist. Creating it.
> [Info] Temporary test job directory:XXXX/.chpl/chapel-test-cCSWD
> [Info] Compiling $CHPL_HOME/examples/hello6-taskpar-dist.chpl
> [Fail] Test job failed to compile - Chapel is not installed correctly
> [Fail] Compilation output:
> g++: error: unrecognized command line option '-wd177'
> g++: error: unrecognized command line option '-wd279'
> g++: error: unrecognized command line option '-wd1572'
> gmake[1]: *** [/tmp/chplXXXX-1886.deleteme/hello6-taskpar-dist.tmp] Error
> 1
> error: compiling generated source
> make: *** [check] Error 1
>
> These options are valid for icc and icpc but not recognized by gcc/g++.
> The final chapel binary is calling mpicxx internally, which calls g++. How
> do I make it call mpiicpc and thus icpc?
>
> Thanks,
> Sweta
>
>
>


-- 
Sweta Yamini
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Chapel-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/chapel-users

Reply via email to