Как установить и собрать Generic Mapping Tools версии 6.0.0 или выше?

Как установить и собрать Generic Mapping Tools версии 6.0.0 или выше?

Я попытался установить общие инструменты сопоставления v6.0.0 согласноинструкции. Мне не удалось установить его. Я думал, что выполнил установку и сборку GMT v6.0.0.

gmt not found, but can be installed with sudo apt install gmt. Это для GMT v5.4.5

Стоит ли мне установить GMT v6.0.0 через GMT5 следующим образом на первом этапе?

Например,

sudo apt-get install gmt gmt-dcw gmt-gshhg

РЕДАКТИРОВАТЬ: Моя проблема возникла из-за настройки пути.

решение1

Для установки я выполнил следующие шаги:

  1. Установите необходимые инструменты

    sudo apt install cdftools cmake
    sudo apt install build-essential libcurl4-gnutls-dev libnetcdf-dev
    
  2. Загрузите исходный код с помощью:

    wget https://github.com/GenericMappingTools/gmt/releases/download/6.0.0/gmt-6.0.0-src.tar.xz
    
  3. Распакуйте исходный файл:

    tar -xvf gmt-6.0.0-src.tar.xz
    
  4. Установите GSHHG и DCW-GMT:

    sudo apt install gmt-gshhg-full
    sudo apt install gmt-dcw
    
    • Найдите эти файлы с помощью команды:

      dpkg -L gmt-gshhg-full
      dpkg -L gmt-dcw
      
  5. Настройка:

    GMT может быть собран на любой платформе, поддерживаемой CMake. CMake — это кроссплатформенная система с открытым исходным кодом для управления процессом сборки. Процесс сборки контролируется двумя файлами конфигурации в каталоге cmake:

    ConfigDefault.cmake контролируется версиями и используется для добавления новых переменных по умолчанию и установки значений по умолчанию для всех. Вам НЕ следует редактировать этот файл. ConfigUser.cmake не контролируется версиями и используется для переопределения значений по умолчанию для каждого пользователя. Существует файл шаблона ConfigUserTemplate.cmake, который вы должны скопировать в ConfigUser.cmake и внести в него изменения. В исходном дереве скопируйте файл конфигурации шаблона cmake/ConfigUserTemplate.cmake в cmake/ConfigUser.cmake и отредактируйте файл в соответствии с вашими требованиями. Вот пример:

    set (CMAKE_INSTALL_PREFIX /usr/local)
    set (GSHHG_ROOT /usr/share/gmt-gshhg)
    set (DCW_ROOT /usr/share/gmt-dcw)
    set (COPY_GSHHG true)
    set (COPY_DCW true)
    
  6. Перейдите в нераспакованную папку и выполните следующие команды:

    cd gmt-6.0.0
    mkdir build
    cd build
    cmake ..
    cmake --build .
    cmake --build . --target install
    
  7. Найдите местоположение установленного инструмента, если вы не установили его самостоятельно:

    which gmt
    
  8. Вам также необходимо загрузить данные поддержки:

    [GSHHG][1]: A Global Self-consistent, Hierarchical, High-resolution 
    Geography Database (>=2.2.0)
    [DCW-GMT][1]: The Digital Chart of the World (optional, >=1.0.5)
    
  9. Дополнительные библиотеки по мере необходимости:

    • Установить необязательные зависимости

       sudo apt-get install gdal-bin libgdal-dev libfftw3-dev libpcre3-dev liblapack-dev libblas-dev libglib2.0-dev ghostscript
      
    • для обеспечения возможности создания фильмов

       sudo apt install graphicsmagick ffmpeg
      
    • для включения просмотра документов через gmt docs

       sudo apt install xdg-utils
      
    • для включения тестирования

       sudo apt-get install graphicsmagick
      
    • для создания документации

       sudo apt install python-sphin
      

Обновлять:

Установка пути

Make sure you set the PATH to include the directory containing the GMT executables if this is not a standard directory like /usr/local/bin.

For Linux/macOS users, open your SHELL configuration file (usually ~/.bashrc) and add the line below to it.

export PATH=${PATH}:/path/to/gmt/bin
Then, you should now be able to run GMT programs.

Примечание: Более подробную информацию о тонкой настройке вашей установки можно найтиздесь

решение2

Примечание: Пакет Ubuntu под 16.04 LTS по непонятным причинам не включает дополнения. Если они вам нужны, вам нужно будет собрать из исходников или обновиться до 18.04 LTS.

  1. Узнайте свой идентификатор пользователя с помощью whoami. Допустим, ваш идентификатор пользователя —пользователь.

  2. Например, я хотел бы установить это программное обеспечение вДокументы.

install_dir='/home/user/Documents/gmt-6.0.0-src'
mkdir "$install_dir"
cd "$install_dir"
  1. Установите зависимости для Ubuntu/Debian.
sudo apt-get install subversion build-essential cmake libgdal-dev libcurl4-gnutls-dev libnetcdf-dev libfftw3-dev libpcre3-dev liblapack-dev libblas-dev gdal-bin libglib2.0-dev ghostscript graphicsmagick ffmpeg cdftools
  1. Получение исходного кода GMT
sudo apt install git
git clone https://github.com/GenericMappingTools/gmt.git GMT
cd  GMT
  1. Загрузить поддерживаемые данные
wget ftp://ftp.soest.hawaii.edu/gshhg/gshhg-gmt-2.3.7.tar.gz
wget ftp://ftp.soest.hawaii.edu/dcw/dcw-gmt-1.1.4.tar.gz
tar xvf gshhg-gmt-2.3.7.tar.gz
tar xvf dcw-gmt-1.1.4.tar.gz
  1. Настройка
cp ./cmake/ConfigUserTemplate.cmake ./cmake/ConfigUser.cmake
  • Отредактируйте ConfigUser.cmake. Используйте коды соответственно следующим образом...
sed -i 's|#set (CMAKE_INSTALL_PREFIX "prefix_path")|set (CMAKE_INSTALL_PREFIX '"$install_dir"')|g' "$install_dir"/GMT/cmake/ConfigUser.cmake
sed -i 's|#set (GSHHG_ROOT "gshhg_path")|set (GSHHG_ROOT '"$install_dir\/GMT\/$gshhg"')|g' "$install_dir"/GMT/cmake/ConfigUser.cmake
sed -i 's|#set (DCW_ROOT "dcw-gmt_path")|set (DCW_ROOT '"$install_dir\/GMT\/$dcw"')|g' "$install_dir"/GMT/cmake/ConfigUser.cmake
sed -i 's|#set (COPY_GSHHG TRUE)|set (COPY_GSHHG TRUE)|g' "$install_dir"/GMT/cmake/ConfigUser.cmake
sed -i 's|#set (COPY_DCW TRUE)|set (COPY_DCW TRUE)|g' "$install_dir"/GMT/cmake/ConfigUser.cmake
  1. Строительство и монтаж
mkdir build
cd build
cmake ..
make
sudo make install
  1. Установка пути
echo "export PATH=$PATH:$install_dir/bin" >> ~/.profile
. ~/.profile
  1. Попробуй это.
cd "$install_dir"
gmt begin GMT_tut_3
gmt coast -R-90/-70/0/20 -JM6i -B -Gchocolate
gmt end show
  1. Документация

ПРИМЕЧАНИЕ:Протестировано на Ubuntu 19.10

Связанный контент