linux mint 安装 bernese 软件

GAMIT/GLOBK 软件简介

linux系统编译bernese软件

安装bernese5.2遇到两个坑 一、Qt的安装 二、bernese的按装

1编译平台

  • 1 Ubuntu18.04
  • 2 bernese5.2

2依赖库

$ C 
$ sudo apt install libxext-dev 
$ sudo apt install libxtst-dev 
$ sudo apt install zlib1g-dev
sudo apt install g++
sudo apt install gfortran

安装 软件

1 qt

下载

$ tar -zxvf qt-everywhere-opensource-src-4.8.7.tar.gz
$ cd qt-everywhere-opensource-src-4.8.7
$ sudo ./configure -release -opensource -static -prefix /usr/local/qt4
$ sudo make                                                            
$ sudo make install

QT编译失败,编译器参数设置不对,应该加上:-std=gnu++98 参数

在终端执行./configure 后,在终端文本中搜索mkspecs或者Build type:

406f0c73372bd6b85a474626185200be.png 文件夹中mkspecs打开在Build type后面的linux-g++文件夹/qmake.conf 修改其中的QMAKE_CXXFLAGS为:

QMAKE_CXXFLAGS = $$QMAKE_CFLAGS -std=gnu++98

如果该文件中不存在QMAKE_CXXFLAGS 参数,则在该文件包含的头文件中查找。 例如:该文件不存在QMAKE_CXXFLAGS 参数,则打开 ../common/linux.conf、../common/gcc-base-unix.conf、../common/g++-unix.conf 这三个文件。如果没有找到还需要递归的打开着三个文件中包含的文件。在../common/gcc-base.conf (包含在文件../common/gcc-base-unix.conf 中)文件中找到,并修改为如下所示。 本文在gcc-base.conf和g++-base.conf 中对参数修改为如下所示。

QMAKE_CXXFLAGS         += $$QMAKE_CFLAGS  -std=gnu++98  #gcc-base.conf文件
QMAKE_CXX = g++ -std=gnu++98   # g++-base.conf 文件

然后再执行

$ sudo make confclean 
$ sudo ./configure -release -opensource -static -prefix /usr/local/qt4
$ sudo make 
$ sudo make install

Qt 4 的编译安装过程需要耗费较长的时间,具体时长取决于你的计算机硬件配置,耐心等待其编译完成。然后设置环境变量 QTDIR,将其指向 Qt 4 的安装目录。切换至 root ,打开 bash 环境配置文件:

$ su root 
# gedit ~/.bashrc

在bashrc文件中添加

# PATH for QT4.8 
export QTDIR=/usr/local/qt4 
export PARH=PATH:QTDIR/bin 
export MANPATH=$QTDIR/doc/man 
export LD_LIBRARY_PATH=$QTDIR/lib

安装错误

gmake[1]: *** [Makefile:128864: .obj/release-shared/qprintdialog_unix.o] Error 1
gmake[1]: Leaving directory '/home/casm/Desktop/qt-everywhere-opensource-src-4.8.7/src/gui'
gmake: *** [Makefile:385: sub-gui-make_default-ordered] Error 2

bernese5.2

通过 root 用户执行 Bernese 的安装引导脚本:

首先给root用户设置密码:

$ sudo passwd root
输入密码,并确认密码

然后进入root,运行setup.sh

$ su root
# sh setup.sh

之后程序提示输入 Bernese 软件的安装目录, 这里的 /root 表示默认安装路径。 !这里有坑,显示/root为正常 我们将其安装到 /opt/BERN52 文件夹,因此输入:/opt。 一路回车,之后,配置文件 configure.pm 被启动,并在屏幕打印以下提示:

==========================================
CONFIGURATION OF THE BERNESE GNSS SOFTWARE
==========================================
0 ... Complete installation (Steps 1 to 5)
1 ... Update LOADGPS.setvar
2 ... Install online updates (only after Step 1)
3 ... Add a new user environment (only after Step 1)
4 ... Compile the menu (only after Step 1)
5 ... Compile the programs (only after Step 1)
6 ... Install the example campaign (only after Step 1)
7 ...   ---

x ... Exit

解释一下此处的各个选项: 键入 0:执行从第 1 项至第 5 项的全部过程键入  1:更新环境变量设置键入  2:安装在线更新包键入  3:添加新用户环境键入  4:编译图形界面菜单键入  5:编辑程序键入  6:安装解算工程示例键入  x: 退出安装程序 由于存在一些坑,我们老老实实一步一步进行。键入 1,安装程序打印出支持的编译器,其中 GNU 指示到 gfortran 的路径,表明安装程序找到的了该编译器:

Enter option: 1

Information about compiler tests for OS LINUX:
 1: g95 tested at AIUB
 2: gfortran tested at AIUB
 3: ifort tested at AIUB (version 10 and 12)
 4: pgf90 tested at AIUB
 5: f90 tested at AIUB
 6: Use "OTHER" compiler from /opt/BERN52/GPS/EXE/Makefile.template

Select Compiler for OS LINUX:
 1: G95
 2: GNU -> /usr/bin/gfortran
 3: IFC
 4: PG_F90
 5: SUNF90
 6: OTHER

Select  [2]: 

这里系统已经检测到了 gfortran,键入 2 选择 gfortran 编译器(也可以直接按 Enter 键回车,因为默认就是 2)。然后安装程序继续打印出当前应用的环境变量:

Current Values:
--------------
    VARIABLE DESCRIPTION           VARIABLE NAME      VARIABLE VALUE
 1: Path to software               C               => /opt/BERN52
 2: Path to Qt libraries           QTBERN          => /usr/local/qt4
 3: Operating system group         OS              => UNIX
 4: Operating system name          OS_NAME         => LINUX
 5: Fortran compiler name          F_VERS          => GNU
 6: List of additional compilers   F_VERS_LIST     => 
 7: Host of the BPE server         BPE_SERVER_HOST => U1604
 8: Path to user environment       U               => ${HOME}/GPSUSER52
 9: Path to temp. user environment T               => ${HOME}/GPSTEMP
10: Path to campaign area          P               => ${HOME}/GPSDATA/CAMPAIGN52
11: Path to datapool area          D               => ${HOME}/GPSDATA/DATAPOOL
12: Path to savedisk area          S               => ${HOME}/GPSDATA/SAVEDISK

解释一下此处的默认环境变量:

第 1 项:Bernese 软件的安装目录 第 2 项:所使用的 Qt 4 所在目录 第 3 项:操作系统类型 第 4 项:操作系统名称 第 5 项:使用的 Fortran 编译器 第 6 项:其他可用的编译器 第 7 项: BPE 服务器 第 8 项:用户环境目录 第 9 项:用户临时文件缓存目录 第 10 项:用户解算工程文件夹 第 11 项:用户数据文件夹目录 第 12 项:解算成果目录

若接受其默认的变量设置,输入 y。要修改其中的配置,输入 n,然后根据其提示,输入变量编号来配置变量。这里使用默认设置,输入 y。随后安装程序将检测是否存在所需的文件夹,当提示某个文件夹不存在时,程序提示是否创建,键入 y 创建即可。 坑1 进行到第三步时重新打开终端

cd /opt/BERN52
$ ld -v
GNU ld (GNU Binutils for Ubuntu) 2.30

版本大于 2.22,需要修改 BERN52/MENU/memu.pro 中的内容。 打开该文件:

$ sudo gedit /opt/BERN52/MENU/menu.pro

去掉前面的##

##QMAKE_LIBS += -lz

保存后退出。然后,回到原终端,按 3 添加新用户环境。 坑2 进行到第五步

若提示 Fortran 程序编译至 100/100 时出错,返回安装程序引导

是安装文件没有权限

cd /opt
sudo chmod 755 -R BERN52

继续安装,直至提示安装成功。

添加普通用户

使用 root 用户进行数据解算操作既不方便也不安全。为了让非 root 用户也能使用 Bernese,需要使用新用户加载环境变量设置文件,并启动配置程序。按 3 继续,若不慎将终端关闭,新开终端中执行如下命令:

$ source /opt/BERN52/GPS/EXE/LOADGPS.setvar
$ perl /opt/BERN52/GPS/EXE/configure.pm

程序再次打印出安装提示,此时键入 3,根据程序提示添加新用户的环境变量即可。

==========================================
CONFIGURATION OF THE BERNESE GNSS SOFTWARE
==========================================
 1 ... Update LOADGPS.setvar
 2 ... Install online updates
 3 ... Add a new user environment
 4 ... Compile the menu
 5 ... Compile the programs
 6 ... Install the example campaign
 7 ...   ---

 x ... Exit

Enter option: 3

Create user environment /home/xxx/GPSUSER52 (y/n): y

Copying menu and program input files...
Copying BPE user scripts...
Copying examples for process control files...
Copying BPE options for processing examples...
Copying ICONS ...
Extracting ICONS ...


**********************************************************************
* User area /home/spacefan/GPSUSER52
* has been added/updated.
**********************************************************************

注意:此步是在普通用户模式下进行的操作,而非 root 用户。

Installation of the Example campaign has been finished

ATTENTION:
When you are going to run them, please make sure that your
user scripts are still not modified.
 ### Executable CRX2RNX is missing!

配置环境变量

为了在每次开机后都能直接使用 Bernese 软件,需要配置在系统启动时自动加载环境变量。编辑用户主文件夹内的配置文件(root 下的配置文件也可以一并添加了):

$ gedit ~/.bashrc

在文件末尾为 Bernese 加载环境变量:

# Load environment variables for Bernese GNSS Software
source /opt/BERN52/GPS/EXE/LOADGPS.setvar

从 /root 目录将 GPSDATA 拷贝到普通用户目录 /home/spacefan,再为其添加普通用户权限即可。

sudo chown -R  geoyxd /home/geoyxd/GPSDATA

卸载qt4

sudo apt-get autoremove --purge libqt4-[a-z]*

4 结束语

参考文献