天天看点

win10子系统ubuntu16.04安装HOS-NWT全过程

前言:

  按照官方文档的安装说明,安装HOS-NWT出错,经过一番捣鼓,终于成功。因此,把win10子系统ubuntu16.04安装HOS-NWT的全过程记录如下。

(1)HOS-NWT

  HOS-NWT is a Numerical Wave Tank based on the High-Order Spectral (HOS) method. It is dedicated to the generation and propagation of highly non-linear wave fields in wave basins with arbitrary constant depth. The proposed model reproduce all features of an ocean wave basin: directional wavemaker, reflective walls and absorbing beach. HOS-NWT takes into account free surface nonlinearities as well as wavemaker ones. It has been developed at Ecole Centrale de Nantes for 10 years and is used in several research projects.

下载地址:https://github.com/LHEEA/HOS-NWT/wiki

 (2)已测试平台

1、ubuntu14.04+gcc/gfortran 4.8.4

2、ubuntu16.04+gcc/gfortran 5.

上述两种环境均能成功安装HOS-NWT,亲测通过,可放心进行安装。

一、安装ubuntu16.04子系统

(1)查看你的win10版本,正常系统只要是1709以上就能使用下面的方法安装ubuntu子系统。操作如下:开始--设置--系统--关于。

win10子系统ubuntu16.04安装HOS-NWT全过程
win10子系统ubuntu16.04安装HOS-NWT全过程

(2) 开启开发者选项,操作如下:开始--设置--更新和安全--开发者选项--右侧勾选开发人员模式。

win10子系统ubuntu16.04安装HOS-NWT全过程
win10子系统ubuntu16.04安装HOS-NWT全过程

(3)启用win10的linux子系统组件。操作如下:开始--设置--应用--程序和功能--启用开启或关闭windows功能--勾选适用于linux的windows子系统,之后重启系统。

win10子系统ubuntu16.04安装HOS-NWT全过程
win10子系统ubuntu16.04安装HOS-NWT全过程

(4) 安装ubuntu

    打开microsoft store,搜索ubuntu,下载ubuntu16.04,点击安装。操作过程如下图

win10子系统ubuntu16.04安装HOS-NWT全过程
win10子系统ubuntu16.04安装HOS-NWT全过程

 (5)安装完成之后启动系统,可能需要等待几分钟,然后设置用户名和密码,如下图所示:

win10子系统ubuntu16.04安装HOS-NWT全过程

(6)为了获得更好的下载速度,更换系统默认的源为阿里源。操作过程如下:

 sudo su #进入root用户

cd /etc/apt/

cp sources.list sources.list_backup

vim sources.list

在阅读模式(esc键)下输入:1,$d删除sources.list的全部内容,然后进入输入模式(按i 键进入)输入下面的内容:

deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse

# 源码

deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted universe multiverse

deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse

最后返回阅读模式(esc键)输入:wq保存退出。

win10子系统ubuntu16.04安装HOS-NWT全过程

 (7)更新源

apt-get update #root下运行,如下图
win10子系统ubuntu16.04安装HOS-NWT全过程

(8)安装gcc、g++、gfortran(root账户下)

sudo su#使用root账户来安装

apt-get install build-essential#安装gcc和g++

apt-get install gfortran#安装gfortran

win10子系统ubuntu16.04安装HOS-NWT全过程

至此,win10子系统ubuntu16.04的基本编译环境就已经搭载好了。接下来的第二部分安装HOS-NWT所需要的数学函数库:blas和lapack以及fftw3。

二、安装HOS-NWT需要用到的三个数学函数库(使用root用户来安装的)

(1)安装blas

apt install libblas-dev

(2)安装lapack

apt install liblapack-dev

(3)安装fftw3

apt install libfftw3-dev

(4)查找确定这三个数学函数安装的位置(同样使用root账户)

 updatedb#更新搜索数据库

locate libblas#查找blas库所在位置

locate liblapack#查找liblapack位置

locate libfftw3#查找libfftw3位置

win10子系统ubuntu16.04安装HOS-NWT全过程
win10子系统ubuntu16.04安装HOS-NWT全过程
win10子系统ubuntu16.04安装HOS-NWT全过程

(5)三个数学函数库的安装位置分别为:

blas:/usr/lib/

lapack:/usr/lib/

fftw3:/usr/lib/x86_64-linux-gnu/

 三、安装HOS-NWT

(1)把HOS-NWT源代码从win10复制到ubuntu16.04子系统并解压,假设我的源代码放在F盘,那个操作过程如下(使用的是普通账户):

cp /mnt/f/HOS-NWT-1.2.tar.gz .#从win10 F盘复制到当前目录(最后一点表示当前目录)

tar zxvf HOS-NWT-1.2.tar.gz#解压到当前目录

win10子系统ubuntu16.04安装HOS-NWT全过程

(2)修改makefile如下所示:

win10子系统ubuntu16.04安装HOS-NWT全过程

 (3)把目录sources/main/ 下的dealiasing.f90里头的MOD全部替换成MODULO,如下所示:

win10子系统ubuntu16.04安装HOS-NWT全过程

(4)安装makedepf90

sudo apt-get install makedepf90

(5) 编译HOS-NWT,如下所示:

make clean#清楚上一次编译结果

make#编译

win10子系统ubuntu16.04安装HOS-NWT全过程

继续阅读