Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
然后,重启电脑。
访问“Windows 软件商店”,并下载安装 Ubuntu 或 Debian 等任一 Linux 发行版。下载及安装过程完全自动。安装完成后,在开始菜单中即可看到 Ubuntu 或 Debian,点击即可启动 Linux。
启动Linux后,则可完全按照 Linux下安装GMT 的说明在WSL中安装GMT。
2.2.3 编译GMT源码
高级用户可以自行在Windows下编译GMT源码。
准备工作
在Windows下编译GMT源码,需要满足如下条件:
Windows版本为Windows 7, Windows 8.1 或 Windows 10
已安装 Visual Studio 2015 Update 3 或更新版本。需要注意,安装 Visual Studio 时要选中“Desktop development with C++”,即安装
C/C++开发工具
已安装 git
已安装 cmake
安装ghostscript
安装gsview
安装vcpkg
vcpkg 是微软开发的跨平台C/C++开发库管理工具。这里安装vcpkg并通过vcpkg编译安装GMT所需的依赖库。
打开终端,执行如下命令以安装vcpkg。这里假定安装到 C:\vcpkg
目录下:
cd C:\
git clone https://github.com/microsoft/vcpkg.git
cd C:\vcpkg
.\bootstrap-vcpkg.bat
稍等片刻即安装完成。
安装依赖库
vcpkg在编译库文件时,默认会编译两次,分别生成Release和Debug两个版本的库文件。一般用户只需要Release版本的库文件即可,因而可以设置vcpkg只编译Release版本,以节省将近一半的编译时间。具体做法为,在 C:\vcpkg\triplets\
目录下找到文件
x64-windows.cmake
和 x86-windows.cmake
,在两个文件的末尾加上
set(VCPKG_BUILD_TYPE release)
即可。
设置完成后执行如下命令以安装依赖库:
cd C:\vcpkg
vcpkg install netcdf-c gdal pcre clapack openblas
vcpkg integrate install
vcpkg会编译安装一堆库文件,这一过程较为耗时,大概需要30分钟到1小时。
安装的库文件位于 C:\vcpkg\installed\x64-windows
目录下,需要手动修改环境变量将 C:\vcpkg\installed\x64-windows\bin
加到 PATH 中。
编译GMT
下载GMT源码包或者从GitHub获取开发版源码:
git clone https://github.com/GenericMappingTools/gmt.git
下载GSHHG数据和DCW数据,并解压。
进入 gmt 源码目录,并在 cmake
目录下创建文件 ConfigUser.cmake
,其内容为:
set (CMAKE_INSTALL_PREFIX "C:/programs/gmt")
set (GSHHG_ROOT "D:/datas/gshhg-gmt-2.2.7")
set (DCW_ROOT "D:/datas/dcw-gmt-1.1.4")
set (COPY_GSHHG true)
set (COPY_DCW true)
set (GMT_INSTALL_MODULE_LINKS FALSE)
set (CMAKE_C_FLAGS "/D_CRT_SECURE_NO_WARNINGS /D_CRT_SECURE_NO_DEPRECATE ${CMAKE_C_FLAGS}")
set (CMAKE_C_FLAGS "/D_CRT_NONSTDC_NO_DEPRECATE /D_SCL_SECURE_NO_DEPRECATE ${CMAKE_C_FLAGS}")
其中 CMAKE_INSTALL_PREFIX
是GMT安装路径,GSHHG_ROOT
和 DCW_ROOT
是之前解压的GSHHG和DCW数据文件夹的路径。
修改为配置文件后。从程序中找到“Developer Command Prompt for VS 2017”并打开(注意,不要使用CMD),并执行如下命令:
cd gmt
mkdir build
cd build
cmake .. -DCMAKE_TOOLCHAIN_FILE=C:\vcpkg\scripts\buildsystems\vcpkg.cmake
cmake --build . --config Release
cmake --build . --config Release --target install
安装完成后,需要将GMT安装目录的bin目录(即 C:\programs\gmt\bin
)手动添加到环境变量PATH中。