MPI.jl status and import error

Is MPI.jl supported for Julia 0.6.4 ?
I get the following precompile error:

mpirun -n 1 julia hello.jl

WARNING: deprecated syntax “bitstype 64 CComm” at /share/apps/Julia/julia-903644385b/share/julia/site/v0.6/MPI/src/…/deps/src/compile-time.jl:67.
Use “primitive type CComm 64 end” instead.
WARNING: The call to compilecache failed to create a usable precompiled cache file for module MPI. Got:
WARNING: Precompile file header verification checks failed.
ERROR: LoadError: LoadError: Declaring precompile(true) is only allowed in module files being imported.
[1] precompile(::Bool) at ./loading.jl:342
[2] precompile() at ./loading.jl:338
[3] include_from_node1(::String) at ./loading.jl:576
while loading /share/apps/Julia/julia-903644385b/share/julia/site/v0.6/MPI/src/MPI.jl, in expression starting on line 1

Primary job terminated normally, but 1 process returned
a non-zero exit code… Per user-direction, the job has been aborted.

mpirun detected that one or more processes exited with non-zero status, thus causing
the job to be terminated. The first process to do so was:

Process name: [[24969,1],0]
Exit code: 1

What version of MPI.jl are you using? I don’t think the current master supports Julia 0.6 anymore. I am using MPI.jl v0.6.0 with Julia version 0.6.2 without error.

It’s the same:

julia> Pkg.status(“MPI”)

  • MPI 0.6.0

I tested MPI.jl v0.6.0 with Julia v0.6.4, and was able to precompile successfully:

julia> using MPI
INFO: Precompiling module MPI.

WARNING: deprecated syntax "bitstype 32 CComm" at /tmp/pkgtmp/v0.6/MPI/src/../deps/src/compile-time.jl:67.
Use "primitive type CComm 32 end" instead.


This looks like some problem with your local setup. The

part looks suspicious to me. As a test, can you create a new Julia package directory and install MPI.jl there. For example

mkdir -v /tmp/pkgtest
export JULIA_PKGDIR=/tmp/pkgtest
julia -e 'Pkg.init(); Pkg.add("MPI", v"0.6.0")'
julia -e 'using MPI'  # trigger precompile

had to log back in and then precompile worked. Thanks!