# Meep port



## Slesarev (Dec 18, 2009)

Dear developers, couldn't you port this:

http://ab-initio.mit.edu/wiki/index.php/Meep

Thanks.


----------



## gordon@ (Dec 18, 2009)

I suppose we could if someone wanted to. This software is ideal for an addition to the ports system. If you are able to get it to work, submit a pr.


----------



## Slesarev (Dec 19, 2009)

Ok, ok, I'd like to, but I have several troubles with compillation. On ./configure script is prints


```
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /usr/local/bin/gmkdir -p
checking for gawk... no
checking for mawk... no
checking for nawk... nawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking for g++... g++
checking for C++ compiler default output file name... a.out
checking whether the C++ compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking for style of include used by make... GNU
checking dependency style of g++... gcc3
checking build system type... i386-unknown-freebsd7.1
checking host system type... i386-unknown-freebsd7.1
checking for gcc... gcc
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking for C++ compiler vendor... gnu
checking whether C++ compiler accepts -malign-double... yes
checking whether C++ compiler accepts -fstrict-aliasing... yes
checking whether C++ compiler accepts -ffast-math... yes
checking for gcc architecture flag...
checking for x86 cpuid 0 output... a:756e6547:6c65746e:49656e69
checking for x86 cpuid 1 output... 6ec:1020800:c189:bfe9fbff
checking whether C++ compiler accepts -march=native... yes
checking for gcc architecture flag... -march=native
checking whether C++ compiler accepts -O3 -malign-double -fstrict-aliasing -march=native... yes
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 196608
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... no
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for ar... ar
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking whether we are using the GNU C++ compiler... (cached) yes
checking whether g++ accepts -g... (cached) yes
checking dependency style of g++... (cached) gcc3
checking how to run the C++ preprocessor... g++ -E
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... freebsd7.1 ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... no
checking whether to build static libraries... yes
checking for ld used by g++... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes
checking for g++ option to produce PIC... -fPIC -DPIC
checking if g++ PIC flag -fPIC -DPIC works... yes
checking if g++ static flag -static works... yes
checking if g++ supports -c -o file.o... yes
checking if g++ supports -c -o file.o... (cached) yes
checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... freebsd7.1 ld.so
checking how to hardcode library paths into programs... immediate
checking for latex2html... no
configure: WARNING: Cannot find latex2html in your path!
checking for sin in -lm... yes
checking for fftw_plan_dft_1d in -lfftw3... no
checking for fftw_create_plan in -ldfftw... no
checking for fftw_create_plan in -lfftw... no
configure: WARNING: FFTW needed for MPB
checking for pkg-config... /usr/local/bin/pkg-config
checking for harminv >= 1.1... checking for g77... no
checking for xlf... no
checking for f77... no
checking for frt... no
checking for pgf77... no
checking for cf77... no
checking for fort77... no
checking for fl32... no
checking for af77... no
checking for xlf90... no
checking for f90... no
checking for pgf90... no
checking for pghpf... no
checking for epcf90... no
checking for gfortran... no
checking for g95... g95
checking whether we are using the GNU Fortran 77 compiler... no
checking whether g95 accepts -g... no
checking whether we are using the GNU Fortran 77 compiler... (cached) no
checking whether g95 accepts -g... (cached) no
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... no
checking whether to build static libraries... yes
checking for g95 option to produce PIC...
checking if g95 static flag  works... no
checking if g95 supports -c -o file.o... no
checking if g95 supports -c -o file.o... (cached) no
checking whether the g95 linker (/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... freebsd7.1 ld.so
checking how to hardcode library paths into programs... immediate
checking how to get verbose linking output from g95... configure: WARNING: compilation failed

checking for Fortran 77 libraries of g95...
checking for dummy main to link with Fortran 77 libraries... none
checking for Fortran 77 name-mangling scheme... configure: error: in `/usr/home/meep-1.1.1':
configure: error: cannot compile a simple Fortran program
See `config.log' for more details.
```

or something like "cannot make link between c++ and fortran libs". Sadly, I have no idea about fortran usage. It reproduces on several computers on FreeBSD 6.4-8.0.


----------



## Slesarev (Dec 19, 2009)

I've got giffirent output with gfortran44 compiler:


```
#./configure F77=gfortran44
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... ./install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... nawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking for g++... g++
checking for C++ compiler default output file name... a.out
checking whether the C++ compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking for style of include used by make... GNU
checking dependency style of g++... gcc3
checking build system type... i386-unknown-freebsd8.0
checking host system type... i386-unknown-freebsd8.0
checking for gcc... gcc
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking dependency style of gcc... gcc3
checking for C++ compiler vendor... gnu
checking whether C++ compiler accepts -malign-double... yes
checking whether C++ compiler accepts -fstrict-aliasing... yes
checking whether C++ compiler accepts -ffast-math... yes
checking for gcc architecture flag...
checking for x86 cpuid 0 output... 5:68747541:444d4163:69746e65
checking for x86 cpuid 1 output... 100f42:1040800:802009:178bfbff
checking whether C++ compiler accepts -march=athlon64... yes
checking for gcc architecture flag... -march=athlon64
checking whether C++ compiler accepts -O3 -malign-double -fstrict-aliasing -march=athlon64... yes
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 196608
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... no
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for ar... ar
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking whether we are using the GNU C++ compiler... (cached) yes
checking whether g++ accepts -g... (cached) yes
checking dependency style of g++... (cached) gcc3
checking how to run the C++ preprocessor... g++ -E
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... freebsd8.0 ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... no
checking whether to build static libraries... yes
checking for ld used by g++... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes
checking for g++ option to produce PIC... -fPIC -DPIC
checking if g++ PIC flag -fPIC -DPIC works... yes
checking if g++ static flag -static works... yes
checking if g++ supports -c -o file.o... yes
checking if g++ supports -c -o file.o... (cached) yes
checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... freebsd8.0 ld.so
checking how to hardcode library paths into programs... immediate
checking for latex2html... no
configure: WARNING: Cannot find latex2html in your path!
checking for sin in -lm... yes
checking for fftw_plan_dft_1d in -lfftw3... yes
checking for pkg-config... /usr/local/bin/pkg-config
checking for harminv >= 1.1... checking whether we are using the GNU Fortran 77 compiler... yes
checking whether gfortran44 accepts -g... yes
checking whether we are using the GNU Fortran 77 compiler... (cached) yes
checking whether gfortran44 accepts -g... (cached) yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... no
checking whether to build static libraries... yes
checking for gfortran44 option to produce PIC... -fPIC
checking if gfortran44 PIC flag -fPIC works... yes
checking if gfortran44 static flag -static works... yes
checking if gfortran44 supports -c -o file.o... yes
checking if gfortran44 supports -c -o file.o... (cached) yes
checking whether the gfortran44 linker (/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... freebsd8.0 ld.so
checking how to hardcode library paths into programs... immediate
checking how to get verbose linking output from gfortran44... -v
checking for Fortran 77 libraries of gfortran44...  -L/usr/local/lib -L/usr/local/lib/gcc44/gcc/i386-portbld-freebsd8.0/4.4.2 -L/usr/local/lib/gcc44/gcc/i386-portbld-freebsd8.0/4.4.2/../../.. -lfftw3 -lgfortranbegin -lgfortran -lm
checking for dummy main to link with Fortran 77 libraries... none
checking for Fortran 77 name-mangling scheme... lower case, underscore, no extra underscore
checking for sgemm_... no
checking for ATL_xerbla in -latlas... no
checking for sgemm_ in -lblas... yes
checking for dgemm_ in -ldgemm... no
checking for sgemm_ in -lmkl... no
checking for sgemm_... (cached) no
checking for sgemm_ in -lcxml... no
checking for sgemm_ in -ldxml... no
checking for sgemm_ in -lscs... no
checking for sgemm_ in -lcomplib.sgimath... no
checking for sgemm_ in -lblas... (cached) yes
checking for sgemm_ in -lessl... no
checking for sgemm_ in -lblas... (cached) yes
checking for cheev_... no
checking for cheev_ in -llapack... yes
checking for harminv_get_freq_error in -lharminv... no
configure: WARNING: harminv support is disabled
checking mpb.h usability... no
checking mpb.h presence... no
checking for mpb.h... no
checking for cblas_cgemm... no
checking for cblas_cgemm in -lgslcblas... yes
checking for gsl_sf_bessel_Jn in -lgsl... yes
checking for deflate in -lz... yes
checking for H5Pcreate in -lhdf5... yes
checking hdf5.h usability... yes
checking hdf5.h presence... yes
checking for hdf5.h... yes
checking for guile-config... guile-config
checking if linking to guile works... yes
checking for scm_make_smob_type... yes
checking for SCM_SMOB_PREDICATE... no
checking for SCM_SMOB_DATA... no
checking for SCM_NEWSMOB... no
checking how to activate readline in Guile... ./configure: 1: Syntax error: Bad fd number
```


----------



## Slesarev (Dec 20, 2009)

Well, thanks for porting VirtualBox, pals. Anyway, I am virtualasing all computational resources.

But you'd better port meep someday, like ports/science/mpb.

And, by tha way, somebody, please, fix the ports/math/root.


----------



## gordon@ (Dec 20, 2009)

I hope this is something as a result of you being a non-native English speaker, but you come across as having a lot of demands to people who build this system as a volunteer project.

Really, the best way to make sure something is working is to get it working yourself and then contributing that back to the project in the form of a port entry. It will then be part of the ports build process and packages will be automatically generated for other people to use.


----------



## stast (Jan 25, 2010)

Port was made yesterday - see science/meep.  ï¿½e


----------

