在我的笔记本电脑上,当我发布时sudo apt-get install meep-mpi-default
,它会安装 1.3 版本的 MEEP。到目前为止一切都很好。我的笔记本电脑有Ubuntu 16.04.2 LTS,代号 Xenial。
当我在工作站上运行相同的命令时,它会安装 1.2 版 MEEP。但我需要在工作站上安装 1.3 版。工作站有Ubuntu 14.04.5 LTS,代号 Trusty。
sudo apt-get update
,sudo apt-get upgrade
在工作站上没有帮助。在软件和更新应用程序中,每个框也都已选中。
答案1
如果官方存储库中没有 MEEP 版本,那么您可以考虑从以下源代码安装它:
为了防止出现任何问题,我们必须替换
make install
为checkinstall
:sudo apt-get update && sudo apt-get install checkinstall
依赖项:在终端窗口中我们执行:
sudo apt-get install libtool* mpich-dev* lapack* guile-2.0 guile-2.0-dev readline-dev fftw3-* paraview hdf5-* gcc-c++ scalapack-* paraview*
变量环境:在终端窗口中我们执行:
gedit .bashrc
如果您愿意,可以使用其他文本编辑器。移至最后一行并在此处完成:
LDFLAGS="-L/usr/local/lib -lm" export LDFLAGS CPPFLAGS="-I/usr/local/include" export CPPFLAGS LD_LIBRARY_PATH="/usr/local/lib:$LD_LIBRARY_PATH" export LD_LIBRARY_PATH PATH=/lib64/mpich/bin:$PATH export PATH
创建目录
t
并输入:mkdir t cd t
加载、编译和设置支持 MPI 的 FFTW 库。此库已在第 1 阶段设置,但 hdf5 库由于某种原因无法正常工作。因此,需要从源代码编译和设置它:
为此,我们在终端窗口中执行:
wget http://www.hdfgroup.org/ftp/HDF5/current/src/hdf5-1.8.14.tar.gz tar -xf hdf5-1.8.14.tar.gz cd hdf5-1.8.14 CC=mpicc CXX=mpicxx F77=mpif77 ./configure –-enable-parallel –prefix=/usr/local make -j4 sudo checkinstall cd ..
Libctl 库:在同一个地方我们执行:
wget http://ab-initio.mit.edu/libctl/libctl-3.2.2.tar.gz tar -xf libctl-3.2.2.tar.gz cd libctl-3.2.2 CC=/lib64/mpich/bin/mpicc CXX=/lib64/mpich/bin/mpicxx F77=/lib64/mpich/bin/mpif77 ./configure make -j4 sudo checkinstall cd ..
MPB:我们在没有 MPI 和 OpenMP 支持的情况下进行编译和设置:
wget http://ab-initio.mit.edu/mpb/mpb-1.5.tar.gz tar -xf mpb-1.5.tar.gz cd mpb-1.5/ CC=/lib64/mpich/bin/mpicc CXX=/lib64/mpich/bin/mpicxx F77=/lib64/mpich/bin/mpif77 ./configure make -j4 sudo checkinstall make distclean
在 MPI 和 OpenMP 的支持下:
CC=/lib64/mpich/bin/mpicc CXX=/lib64/mpich/bin/mpicxx F77=/lib64/mpich/bin/mpif77 ./configure --with-mpi --with-openmp make -j4 sudo checkinstall cd ..
Harminv. 执行:
wget http://ab-initio.mit.edu/harminv/harminv-1.4.tar.gz tar -xf harminv-1.4.tar.gz cd harminv-1.4/ CC=/lib64/mpich/bin/mpicc CXX=/lib64/mpich/bin/mpicxx F77=/lib64/mpich/bin/mpif77 ./configure make sudo checkinstall cd ..
MEEP。没有 MPI 和 OpenMP 的支持:
wget http://ab-initio.mit.edu/meep/meep-1.3.tar.gz tar -xf meep-1.3.tar.gz cd meep-1.3/ CC=/lib64/mpich/bin/mpicc CXX=/lib64/mpich/bin/mpicxx F77=/lib64/mpich/bin/mpif77 ./configure make -j4 sudo checkinstall make distclean
在 MPI 和 OpenMP 的支持下:
CC=/lib64/mpich/bin/mpicc CXX=/lib64/mpich/bin/mpicxx F77=/lib64/mpich/bin/mpif77 ./configure --with-mpi make -j4 sudo checkinstall
h5utils。MPB 和 MEEP 程序将计算结果保存在扩展名为 .h5 的文件中。注意:此包 (h5utils) 包含一组用于处理 h5 文件的程序,例如 h5topng(用于将 h5 文件转换为图形 png 格式)、h5tovtk(转换为 vtk 格式,方便通过 Paraview 程序显示)和 h5totxt(转换为文本格式)。如果不设置和使用这些程序,那么许多计算结果将无法查看。
wget http://ab-initio.mit.edu/h5utils/h5utils-1.12.1.tar.gz tar -xf http://ab-initio.mit.edu/h5utils/h5utils-1.12.1.tar.gz cd h5utils-1.12.1 CC=/lib64/mpich/bin/mpicc CXX=/lib64/mpich/bin/mpicxx F77=/lib64/mpich/bin/mpif77 ./configure make -j4 sudo checkinstall cd ..
如果命令执行“make - j4”因“[writepng.o] of Error 1”错误而中断,那么我们执行的不是最后三个命令:
make h5totxt make h5tovtk sudo mv h5tovtk /usr/local/bin/ sudo mv h5totxt /usr/local/bin/ cd ..
有关详细信息,请参阅For more information, see这。