Ubuntu20.04安装PEA软件
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-PEAsudo cd /optgit clone https://github.com/GeoscienceAustralia/ginan.git(或者github.com下载后拷贝到/opt)cd ginansudo mkdir -p src/buildcd src/buildcmake ../(或者sudo cmake ../ -DOPTIMISATION=FALSE)sudo make (PEA和POD)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软件的更多相关文章
- ubuntu20.04安装网易云音乐
Ubuntu20.04安装网易云 进入网易云音乐下载地址 下载对应客户端 进入终端,安装 sudo dpkg -i 软件名.deb
- Ubuntu20.04安装Typora
Ubuntu20.04安装Typora 安装方法 # optional, but recommended sudo apt-key adv --keyserver keyserver.ubuntu.c ...
- Ubuntu20.04安装 maven并配置阿里源
Ubuntu20.04安装 maven并配置阿里源 sudo apt update sudo apt install maven #安装maven,默认安装路径为/usr/share/maven 添加 ...
- ubuntu20.04安装EasyConnect兼容性问题解决
目录 1. 命令行启动EasyConnect 2. 降级pango 3. 重新启动EasyConnect,即可成功启动 Ubuntu20.04安装EasyConnect后无法启动的解决方案 工作使用操 ...
- Ubuntu20.04安装Redis
本文介绍了如何在Ubuntu20.04上安装Redis. 安装Redis sudo apt install redis-server 检查服务的状态 安装完成后可以通过以下命令检查服务的状态 sudo ...
- Ubuntu20.04安装MongoDB
本教程描述了如何在Ubuntu20.04上安装MongoDB4.4 安装MongoDB Ubuntu 20.04默认存储库中不提供最新版本的MongoDB,因此需要在系统中添加官方的MongoDB存储 ...
- Ubuntu20.04 安装MongoDB及其基本使用
MongoDB 官方文档 本博客旨在自我学习使用,如有任何疑问请及时联系博主 基本介绍 MongoDB 是由C++语言编写并基于分布式文件存储的开源数据库. MongoDB 是一款介于关系数据库和非关 ...
- ubuntu server 12.04安装任何软件都出现the following packages have unmet dependencies的解决方法
虽然目前没太弄清这到底是怎么回事,但是暂时可以给出一个解决的方法, 如果在安装任何软件都会出现这个问题,那么尝试着输入sudo apt-get install -f试一下. 在该命令执行完成后,我这边 ...
- Ubuntu 16.04安装各种软件
Ubuntu 16.04发布了,带来了很多新特性,同样也依然带着很多不习惯的东西,所以装完系统后还要进行一系列的优化. 1.删除libreoffice libreoffice虽然是开源的,但是Java ...
- Ubuntu19.04安装常用软件
安装Indicator Stickynotes 桌面便签小工具sudo add-apt-repository ppa:umang/indicator-stickynotessudo apt-get u ...
随机推荐
- .NET Core 日志记录程序和常用日志记录框架
本文主要内容为.NET Core的日志记录程序和常使用的日志记录框架的简单使用 首先,打开VS2019新建一个ASP.NET Core Web Api项目,项目创建好后会有一个集成好的天气预报的类和控 ...
- 使用 DirectSound 播放 WAV 文件
使用 DirectSound 播放 WAV 文件 本文需要的前置知识可以在之前的这两篇文章找到. WAVE音频文件格式及其64位扩展格式的简要介绍 读写wav格式文件 基于本文介绍的方法,我们也可以用 ...
- 【JavaScript】JS引擎中执行上下文如何顺序执行代码
首先我们知道JavaScript引擎包括一个调用栈和堆,调用栈是代码实际执行的地方,使用执行上下文(执行环境)来完成:堆是非结构化的内存池,存储了应用程序所需要的所有对象. 执行上下文是什么? 执行上 ...
- Liunx(CentOS)安装Nacos(单机启动,绑定Mysql)
Liunx安装Nacos(单机启动,绑定Mysql) 一,准备安装包 github下载点 二,在/usr/local/目录下创建一个文件夹用于上传和解压Nacos cd /usr/local/ #这里 ...
- 基于C++的OpenGL 04 之变换
1. 概述 本文基于C++语言,描述OpenGL的变换 前置知识可参考: 基于C++的OpenGL 03 之纹理 - 当时明月在曾照彩云归 - 博客园 (cnblogs.com) 笔者这里不过多描述每 ...
- 浏览器调试工具devtool
视频网址 先打开devtool,再打开命令菜单.可以用screenshot来截屏 $0:先在element点击元素,再在控制台输入$0,这个$0代表element中选中的DOM元素. $1,$2... ...
- 富士胶片2105N打印机安装说明
打开驱动文件,执行软件 自定义安装驱动 手动输入IP地址 下一步安装完成 自定义安装扫描软件 选择print & scan 下一步安装完成
- 跨平台C++ DLL导出宏
#pragma once #if defined(__GNUC__) #define _DEPRECATED_ __attribute__((deprecated)) #define _FORCE_I ...
- No.3.1
JavaScript是什么? JavaScript是一种运行在客户端(浏览器)的编程语言,实现人机交互效果. 作用:网页特效(监听用户的一些行为让网页作出对应的反馈) 表单验证(针对表单数据的 ...
- div溢出横向滚动
需求:div在一行内需要溢出滚动 方案: 1:父类元素需要设置 overflow-x: auto; //横向方向溢出元素 white-space: nowrap; //溢出的元素不换行 2:子元素需 ...