PEA软件可用于实时精密卫星钟差估计,精密卫星定轨,精密单点定位,电离层建模以及DCB估计等。

Ginan开发人员推荐使用Ubuntu18.04或Ubuntu20.04搭建,本文使用Ubuntu20.04系统

PEA安装参考博客:https://blog.sciencenet.cn/blog-3486472-1337639.html

GitHub下载Ginan安装包

Ginan安装的依赖项:(官网推荐)

  • C/C++ and Fortran compiler. We use and recommend gcc, g++, and gfortran
  • BLAS and LAPACK linear algebra libraries. We use and recommend OpenBlas as this contains both libraries required
  • CMAKE > 3.0
  • YAML > 0.6
  • Boost >= 1.73 (tested on 1.73)
  • Mongo_cxx >= 3.6.0 (and Mongo_C >= 1.17.1)
  • Eigen3 > 3.4 (we have used 3.4.0)
  • netCDF4
  • Python3 (tested on Python 3.7)

修改源sources.list

输入命令:sudo gedit  /etc/apt/sources.list打开sources.list

在末尾加入阿里源:

deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse

随后加入:

deb http://security.ubuntu.com/ubuntu bionic-security main (这个是用于下载libssl1.0-dev)

保存退出,输入命令:

sudo apt update

{(若出现没有公钥。。。。。。。。。)输入命令sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32导入公钥3B4FE6ACC0B21F32是缺少的密钥,缺少什么就下什么!

随后再次输入sudo apt update}

(...等待)

sudo apt upgrade -y

阿里源最近好像有些不稳定,有更好的还望大家留言推荐

1、更新Ubuntu系统并安装gcc、gfortran、git、openblas等;

sudo apt install -y git gobjc gobjc++ gfortran libopenblas-dev openssl curl net-tools openssh-server cmake make libssl1.0-dev wget sudo python3 software-properties-common

2、安装libssl1.0-dev依赖库

输入命令:

sudo apt update && apt-cache policy libssl1.0-dev

sudo apt-get install libssl1.0-dev

安装完成,输入命令查看是否安装完成:dpkg -l *libssl*,下图表示安装完成。

 3、安装gcc -9,g++ -9(Ginan推荐9版本)

输入命令:

sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y

sudo apt update

sudo apt install -y gcc-9 g++-9

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 51

sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-9 51

输入命令 gcc -v和g++ -v 查看版本,gcc和g++版本均为9.5.0

4、安装openssl-devel依赖库

sudo apt-get install openssl

创建一个临时目录结构,使依赖项位于其中,它可以在安装过程完成后删除:

sudo mkdir -p /opt/tmp

5、YAML

安装YAML库,输入命令
cd /opt/tmp

sudo git clone https://github.com/jbeder/yaml-cpp.git(若下载不成功可自行在GitHub下载安装包)

如若解压:sudo unzip ./yaml-cpp.zip

cd yaml-cpp

sudo mkdir cmake-build && cd cmake-build

sudo cmake .. -DCMAKE\_INSTALL\_PREFIX=/usr/local/ -DYAML\_CPP\_BUILD\_TESTS=OFF

sudo make install yaml-cpp

cd ../..

sudo rm -fr yaml-cpp

6、Boost

cd /opt/tmp/

sudo wget -c https://boostorg.jfrog.io/artifactory/main/release/1.73.0/source/boost_1_73_0.tar.gz

sudo tar -xf boost_1_73_0.tar.gz

cd boost_1_73_0/

sudo ./bootstrap.sh

sudo ./b2 install

(较长等待...)

cd ../..

sudo rm -rf boost_1_73_0 boost_1_73_0.tar.gz

7、Eigen3

cd /opt/tmp/

sudo git clone https://gitlab.com/libeigen/eigen.git

cd eigen

sudo git checkout 3.4.0

sudo mkdir cmake-build

cd cmake-build

sudo cmake ..

sudo make install

cd ../..

sudo rm -rf eigen

8、Mongo_cxx_driver (PEA)

cd /opt/tmp

sudo wget https://github.com/mongodb/mongo-c-driver/releases/download/1.17.1/mongo-c-driver-1.17.1.tar.gz(也可直接在该网站下载)

sudo tar -xf mongo-c-driver-1.17.1.tar.gz

cd mongo-c-driver-1.17.1/

sudo mkdir cmake-build

cd cmake-build/

sudo cmake -DENABLE_AUTOMATIC_INIT_AND_CLEANUP=OFF -DENABLE_EXAMPLES=OFF ../

sudo cmake --build .

sudo cmake --build . --target install

cd ../..

sudo curl -OL https://github.com/mongodb/mongo-cxx-driver/releases/download/r3.6.0/mongo-cxx-driver-r3.6.0.tar.gz(也可直接在该网站下载)

sudo tar -xf mongo-cxx-driver-r3.6.0.tar.gz

cd mongo-cxx-driver-r3.6.0/build

sudo cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local -DENABLE_EXAMPLES=OFF ../

sudo cmake --build . --target EP_mnmlstc_core(需要较好的网络)

sudo cmake --build .

sudo cmake --build . --target install

cd ../..

sudo rm -rf mongo-c-driver-1.17.1 mongo-c-driver-1.17.1.tar.gz mongo-cxx-driver-r3.6.0 mongo-cxx-driver-r3.6.0.tar.gz

在安装mongocxx时,cmake --build.出现了如下错误:

该错误应该是和glibc版本有关(好像是和Ubuntu有关),当定义_SC_SIGSTKSZ_SOURCE或_GNU_SOURCE时,MINSIGSTKSZ和SIGSTKSZ在Linux上不再是常数。可以更换glibc版本或者Ubuntu版本,或者在sigStackSize的定义之前添加以下内容:(catch.hpp)

#undef MINSIGSTKSZ

#define MINSIGSTKSZ 16384

 9、netcdf4 (OTL package)

sudo apt -y install libnetcdf-dev libnetcdf-c++4-dev

10、安装Ginan-PEA
sudo cd /opt
git clone https://github.com/GeoscienceAustralia/ginan.git(或者github.com下载后拷贝到/opt)
cd ginan
sudo mkdir -p src/build
cd src/build
sudo cmake ../(或者sudo cmake ../ -DOPTIMISATION=FALSE
sudo make  (PEA和POD)
或者
sudo make pea
sudo make pod
检查PEA是否安装
cd ../../examples
../bin/pea --help

到此PEA已安装完成!

仅记录科研中的经历,有问题请大家批评指正,大家遇到困难欢迎大家留言。

参考:

https://blog.csdn.net/m0_46577050/article/details/122978664

https://www.saoniuhuo.com/question/detail-2133174.html

安装libssl-dev失败的另一种方法(我用这个没成功):

https://blog.csdn.net/Wang20122013/article/details/124836398?spm=1001.2101.3001.6650.10&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-10-124836398-blog-110366597.pc_relevant_default&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-10-124836398-blog-110366597.pc_relevant_default&utm_relevant_index=10

https://jingyan.baidu.com/article/8065f87f480a84233024985c.html

https://blog.csdn.net/L021216/article/details/123126368

https://www.feiniaomy.com/post/1043.html

https://www.cnblogs.com/zhtzyh2012/p/16410705.html

Ubuntu20.04安装PEA软件的更多相关文章

  1. ubuntu20.04安装网易云音乐

    Ubuntu20.04安装网易云 进入网易云音乐下载地址 下载对应客户端 进入终端,安装 sudo dpkg -i 软件名.deb

  2. Ubuntu20.04安装Typora

    Ubuntu20.04安装Typora 安装方法 # optional, but recommended sudo apt-key adv --keyserver keyserver.ubuntu.c ...

  3. Ubuntu20.04安装 maven并配置阿里源

    Ubuntu20.04安装 maven并配置阿里源 sudo apt update sudo apt install maven #安装maven,默认安装路径为/usr/share/maven 添加 ...

  4. ubuntu20.04安装EasyConnect兼容性问题解决

    目录 1. 命令行启动EasyConnect 2. 降级pango 3. 重新启动EasyConnect,即可成功启动 Ubuntu20.04安装EasyConnect后无法启动的解决方案 工作使用操 ...

  5. Ubuntu20.04安装Redis

    本文介绍了如何在Ubuntu20.04上安装Redis. 安装Redis sudo apt install redis-server 检查服务的状态 安装完成后可以通过以下命令检查服务的状态 sudo ...

  6. Ubuntu20.04安装MongoDB

    本教程描述了如何在Ubuntu20.04上安装MongoDB4.4 安装MongoDB Ubuntu 20.04默认存储库中不提供最新版本的MongoDB,因此需要在系统中添加官方的MongoDB存储 ...

  7. Ubuntu20.04 安装MongoDB及其基本使用

    MongoDB 官方文档 本博客旨在自我学习使用,如有任何疑问请及时联系博主 基本介绍 MongoDB 是由C++语言编写并基于分布式文件存储的开源数据库. MongoDB 是一款介于关系数据库和非关 ...

  8. ubuntu server 12.04安装任何软件都出现the following packages have unmet dependencies的解决方法

    虽然目前没太弄清这到底是怎么回事,但是暂时可以给出一个解决的方法, 如果在安装任何软件都会出现这个问题,那么尝试着输入sudo apt-get install -f试一下. 在该命令执行完成后,我这边 ...

  9. Ubuntu 16.04安装各种软件

    Ubuntu 16.04发布了,带来了很多新特性,同样也依然带着很多不习惯的东西,所以装完系统后还要进行一系列的优化. 1.删除libreoffice libreoffice虽然是开源的,但是Java ...

  10. Ubuntu19.04安装常用软件

    安装Indicator Stickynotes 桌面便签小工具sudo add-apt-repository ppa:umang/indicator-stickynotessudo apt-get u ...

随机推荐

  1. .NET Core 日志记录程序和常用日志记录框架

    本文主要内容为.NET Core的日志记录程序和常使用的日志记录框架的简单使用 首先,打开VS2019新建一个ASP.NET Core Web Api项目,项目创建好后会有一个集成好的天气预报的类和控 ...

  2. 使用 DirectSound 播放 WAV 文件

    使用 DirectSound 播放 WAV 文件 本文需要的前置知识可以在之前的这两篇文章找到. WAVE音频文件格式及其64位扩展格式的简要介绍 读写wav格式文件 基于本文介绍的方法,我们也可以用 ...

  3. 【JavaScript】JS引擎中执行上下文如何顺序执行代码

    首先我们知道JavaScript引擎包括一个调用栈和堆,调用栈是代码实际执行的地方,使用执行上下文(执行环境)来完成:堆是非结构化的内存池,存储了应用程序所需要的所有对象. 执行上下文是什么? 执行上 ...

  4. Liunx(CentOS)安装Nacos(单机启动,绑定Mysql)

    Liunx安装Nacos(单机启动,绑定Mysql) 一,准备安装包 github下载点 二,在/usr/local/目录下创建一个文件夹用于上传和解压Nacos cd /usr/local/ #这里 ...

  5. 基于C++的OpenGL 04 之变换

    1. 概述 本文基于C++语言,描述OpenGL的变换 前置知识可参考: 基于C++的OpenGL 03 之纹理 - 当时明月在曾照彩云归 - 博客园 (cnblogs.com) 笔者这里不过多描述每 ...

  6. 浏览器调试工具devtool

    视频网址 先打开devtool,再打开命令菜单.可以用screenshot来截屏 $0:先在element点击元素,再在控制台输入$0,这个$0代表element中选中的DOM元素. $1,$2... ...

  7. 富士胶片2105N打印机安装说明

    打开驱动文件,执行软件 自定义安装驱动 手动输入IP地址 下一步安装完成 自定义安装扫描软件 选择print & scan 下一步安装完成

  8. 跨平台C++ DLL导出宏

    #pragma once #if defined(__GNUC__) #define _DEPRECATED_ __attribute__((deprecated)) #define _FORCE_I ...

  9. No.3.1

    JavaScript是什么? JavaScript是一种运行在客户端(浏览器)的编程语言,实现人机交互效果. 作用:网页特效(监听用户的一些行为让网页作出对应的反馈)     表单验证(针对表单数据的 ...

  10. div溢出横向滚动

    需求:div在一行内需要溢出滚动 方案: 1:父类元素需要设置 overflow-x: auto;  //横向方向溢出元素 white-space: nowrap; //溢出的元素不换行 2:子元素需 ...