[Nek5000-users] nek+moab problem on mac osx 10.9 using macports

nek5000-users at lists.mcs.anl.gov nek5000-users at lists.mcs.anl.gov
Sun Dec 1 01:06:14 CST 2013


Praveen,

The linker with mpif77 cannot handle -stdlib since it should be passed
to a clang compiler and not gfortran. Try changing the linker from
mpif77 to mpicxx.

I dont have a configuration setup with this combination of
OpenMPI+clang to test currently. I have mpich3+clang3.4 on a ubuntu
system and can try to check if NEK builds cleanly there after
upgrading my gfortran. If there are clang issues, it should show up
there too.

Vijay

On Sat, Nov 30, 2013 at 11:12 PM,  <nek5000-users at lists.mcs.anl.gov> wrote:
>
> On Sun, Dec 1, 2013 at 8:18 AM, <nek5000-users at lists.mcs.anl.gov> wrote:
>>
>> AFAIK, these routines have not been deprecated in clang. Can you print
>> out the version of your compilers so that we can see if some
>> implementation is missing ? clang --version.
>>
>> You should also use LDFLAGS+="-stdlib=libstdc++" on the linker command
>> since OSX Mavericks might have a different behavior by default in
>> choosing the standard C++ runtime libraries. If that doesn't fix the
>> undefined errors, let us know the detailed messages.
>>
>> Vijay
>
>
> Hello Vijay
>
> Here is some information on my mpi which is installed from macports
>
> clang is from xcode.
>
> $ clang -v
>
> Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
>
> Target: x86_64-apple-darwin13.0.0
>
> Thread model: posix
>
>
> $ openmpicc -v
>
> Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
>
> Target: x86_64-apple-darwin13.0.0
>
> Thread model: posix
>
>
> $ openmpic++ -v
>
> Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
>
> Target: x86_64-apple-darwin13.0.0
>
> Thread model: posix
>
>
> $ openmpif77 -v
>
> Using built-in specs.
>
> COLLECT_GCC=/opt/local/bin/gfortran-mp-4.8
>
> COLLECT_LTO_WRAPPER=/opt/local/libexec/gcc/x86_64-apple-darwin13/4.8.1/lto-wrapper
>
> Target: x86_64-apple-darwin13
>
> Configured with:
> /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_lang_gcc48/gcc48/work/gcc-4.8.1/configure
> --prefix=/opt/local --build=x86_64-apple-darwin13
> --enable-languages=c,c++,objc,obj-c++,lto,fortran,java
> --libdir=/opt/local/lib/gcc48 --includedir=/opt/local/include/gcc48
> --infodir=/opt/local/share/info --mandir=/opt/local/share/man
> --datarootdir=/opt/local/share/gcc-4.8 --with-local-prefix=/opt/local
> --with-system-zlib --disable-nls --program-suffix=-mp-4.8
> --with-gxx-include-dir=/opt/local/include/gcc48/c++/ --with-gmp=/opt/local
> --with-mpfr=/opt/local --with-mpc=/opt/local --with-cloog=/opt/local
> --enable-cloog-backend=isl --disable-cloog-version-check
> --enable-stage1-checking --disable-multilib --enable-lto
> --enable-libstdcxx-time --with-as=/opt/local/bin/as
> --with-ld=/opt/local/bin/ld --with-ar=/opt/local/bin/ar
> --with-bugurl=https://trac.macports.org/newticket
> --with-pkgversion='MacPorts gcc48 4.8.1_3'
>
> Thread model: posix
>
> gcc version 4.8.1 (MacPorts gcc48 4.8.1_3)
>
>
> I configure moab like this
>
>
> ./configure --prefix=`pwd` \
>
>             --with-mpi \
>
>             --with-hdf5=/opt/local \
>
>             --enable-mbzoltan \
>
>             --with-zoltan=/opt/trilinos-11.4.1-mpi \
>
>             CC=openmpicc CXX=openmpic++ FC=openmpif77 F77=openmpif77
>
>
> If I add -stdlib=libstdc++ flag it is not recognized
>
>
> makenek - automatic build tool for Nek5000
>
> generating makefile ...
>
> openmpif77 -c  -O2 -fdefault-real-8 -fdefault-double-8 -x f77-cpp-input
> -fcray-pointer -DMOAB -DPTRSIZE8 -DMPI -DLONGINT8 -DUNDERSCORE
> -DGLOBAL_LONG_LONG -I/Users/praveen/rayleigh3
> -I/Users/praveen/Applications/nek5_svn/trunk/nek -I./
> /Users/praveen/rayleigh3/ray.f
> -I/Users/praveen/Applications/nek5_svn/trunk/nek/3rd_party
> -I/Users/praveen/Applications/moab/moab-4.6.2/include  -o obj/ray.o
>
> openmpif77 -o nek5000  obj/ray.o obj/drive.o obj/drive1.o obj/drive2.o
> obj/plan4.o obj/bdry.o obj/coef.o obj/conduct.o obj/connect1.o
> obj/connect2.o obj/dssum.o obj/edgec.o obj/eigsolv.o obj/gauss.o
> obj/genxyz.o obj/navier1.o obj/makeq.o obj/navier0.o obj/navier2.o
> obj/navier3.o obj/navier4.o obj/prepost.o obj/speclib.o obj/map2.o
> obj/turb.o obj/mvmesh.o obj/ic.o obj/ssolv.o obj/planx.o obj/math.o
> obj/mxm_wrapper.o obj/hmholtz.o obj/gfdm_par.o obj/gfdm_op.o
> obj/gfdm_solve.o obj/subs1.o obj/subs2.o obj/genbox.o obj/gmres.o obj/hsmg.o
> obj/convect.o obj/induct.o obj/perturb.o obj/navier5.o obj/navier6.o
> obj/navier7.o obj/navier8.o obj/fast3d.o obj/fasts.o obj/calcz.o obj/byte.o
> obj/chelpers.o obj/byte_mpi.o obj/postpro.o obj/cvode_driver.o
> obj/nek_comm.o obj/init_plugin.o obj/setprop.o obj/qthermal.o
> obj/cvode_aux.o obj/makeq_aux.o obj/papi.o obj/ssygv.o obj/dsygv.o
> obj/nek_in_situ.o obj/mxm_std.o obj/blas.o obj/moab.o obj/imeshutil.o
> obj/imeshcutil.o obj/comm_mpi.o obj/singlmesh.o obj/jl_gs.o obj/jl_sort.o
> obj/jl_sarray_transfer.o obj/jl_sarray_sort.o obj/jl_gs_local.o
> obj/jl_crystal.o obj/jl_comm.o obj/jl_tensor.o obj/jl_fail.o
> obj/jl_fcrystal.o obj/jl_findpts.o obj/jl_findpts_local.o obj/jl_obbox.o
> obj/jl_poly.o obj/jl_lob_bnd.o obj/jl_findpts_el_3.o obj/jl_findpts_el_2.o
> obj/jl_sparse_cholesky.o obj/jl_xxt.o obj/jl_fcrs.o  -L/opt/local/lib
> -L/Users/praveen/Applications/moab/moab-4.6.2/lib
> -L/Users/praveen/Applications/moab/moab-4.6.2/lib -liMesh -lMOAB -lnetcdf
> -lhdf5     -lm  -L/opt/local/lib
> -L/opt/local/lib/gcc48/gcc/x86_64-apple-darwin13/4.8.1
> -L/opt/local/lib/gcc48/gcc/x86_64-apple-darwin13/4.8.1/../../.. -lmpi_usempi
> -lmpi_mpifh -lmpi -lgfortran -lquadmath -lm  -L/opt/local/lib
> -L/opt/local/lib/gcc48/gcc/x86_64-apple-darwin13/4.8.1
> -L/opt/local/lib/gcc48/gcc/x86_64-apple-darwin13/4.8.1/../../.. -lmpi_usempi
> -lmpi_mpifh -lmpi -lgfortran -lquadmath -lm  -lmpi_cxx -lstdc++
> -stdlib=libstdc++
>
> gfortran-mp-4.8: error: unrecognized command line option '-stdlib=libstdc++'
>
> make: *** [nek5000] Error 1
>
>
> Thanks
>
> praveen
>
>
> _______________________________________________
> Nek5000-users mailing list
> Nek5000-users at lists.mcs.anl.gov
> https://lists.mcs.anl.gov/mailman/listinfo/nek5000-users
>


More information about the Nek5000-users mailing list