chaoshu的个人博客分享 http://blog.sciencenet.cn/u/chaoshu

博文

Ubuntu 16.04 LTS安装Bernese5.2流程

已有 2359 次阅读 2020-3-29 18:10 |个人分类:Bernese|系统分类:科研笔记

本实验软件说明:

1、采用独立Linux系统(不是虚拟机、也不是双系统);

2、Bernese5.2的Linux版本;

3、QT4:qt-everywhere-opensource-src-4.8.7

QT4下载地址:http://download.qt.io/archive/qt/4.8/4.8.7/qt-everywhere-opensource-src-4.8.7.tar.gz

如果需要Bernese软件,请联系博主:cugchenchao@163.com


一、安装依赖库和Fortran编译器

Bernese 软件依赖于 X11 和 zlib,编译软件之前需要首先安装这些依赖。使用如下命令安装 X11 和 zlib:

sudo apt-get install libx11-dev

sudo apt-get install libxext-dev

sudo apt-get install libxtst-dev

sudo apt-get install zlib1g-dev

sudo apt-get install gfortran


二、安装 Qt 4

这里以 qt-everywhere-opensource-src-4.8.7.tar.gz 为例。首先解压源代码文件:

tar -zxvf qt-everywhere-opensource-src-4.8.7.tar.gz

之后使用 cd 命令进入解压得到的文件夹,执行如下命令将 Qt 4 安装到 /usr/local/qt4 目录内:

sudo ./configure -release -opensource -static -prefix /usr/local/qt4

sudo make

sudo make install


Qt 4 的编译安装过程需要耗费较长的时间,具体时长取决于你的计算机硬件配置(我的电脑是2009年以前的旧电脑,编译花了四五个小时以上),耐心等待其编译完成。测试是否安装成功:

cd /usr/local/qt4/bin

./qmake -v 

如果出来版本信息说明安装成功;

然后设置环境变量 QTDIR,将其指向 Qt 4 的安装目录。如果你使用 Bash,请在.bashrc中添加以下命令:

image.png

上述操作以后,source ~/.bashrc加载


在终端中输入:

qmake -v

一般会报错提示qmake找不到,自己编译qt库,需要手动修改默认库路径。

cd /usr/lib/i386-linux-gnu/qt-default/qtchooser/

我电脑是32位的,所以是i386-linux-gnu,如果是64位电脑,应该是x86_64-linux-gnu

会有一个default.conf配置文件,把文件里面的默认配置删了,修改为自己编译安装的Qt库目录,上面是默认的改为下面的,再次输入qmake -v。不会再报错。

/usr/lib/i386-linux-gnu/qt4/bin

/usr/lib/i386-linux-gnu

改为:

/usr/local/qt4/bin

/usr/local/qt4


三、安装Bernese

Bernese 程序为用户提供了安装引导脚本 setup.sh,执行该脚本并根据提示操作即可完成安装过程。Bernese 默认安装到当前用户的 Home 文件夹,但也可以安装到其他文件夹,完整安装需要约 500 MB 的磁盘空间。为了供多个用户使用,需要共享 BERN52 和 MENU.INP 的执行和修改权限。本示例将 Bernese 安装至 /opt 目录内。

解压Bernese5.2程序包中有如下文件:

BERN52.tgz:主程序包;

CAMPAIGN52.tgz:示例工程;

DATAPOOL.tgz:输入数据;

ICONS.tgz:程序图标;

README:程序说明文档;

SAVEDISK.tgz:输出数据;

setup.sh:程序安装脚本。


使用 cd 命令进入 Bernese 源码文件夹,通过 root 用户执行其中的安装引导脚本:

sudo -s

sh setup.sh

之后程序提示输入 Bernese 软件的安装目录:

Full path where the BERN52 software tree will be installed
[ /home/chaoshu ]:

这里的 /home/chaoshu 表示默认安装路径。我希望将其安装到 /opt/BERN52 文件夹,因此输入:/opt。之后程序提示找到的 Perl 语言解释器位置:

Perl program to be used [ /usr/bin/perl ]:

一般使用系统自带的 Perl 语言解释器就可以了,此处直接回车。之后,设置安装脚本 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

Enter option:

此处第 1 项为更新环境变量设置,第 2 项为安装在线更新包,第 3 项为添加新用户环境,第 4 项为编译图形界面菜单,第 5 项为编辑程序,第 6 项为安装解算工程示例;而第 0 项为完整安装,即执行从第 1 项至第 5 项的全部过程;键入 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)。然后安装程序继续打印出当前应用的环境变量:

image.png

这里的第 1 项为 Bernese 软件的安装目录,第 2 项为所使用的 Qt 4 所在目录,第 3 项为操作系统类型,第 4 项为操作系统名称,第 5 项为使用的 Fortran 编译器,第 6 项为其他可用的编译器,第 7 项为 BPE 服务器,第 8 项为用户环境目录,第 9 项为用户临时文件缓存目录,第 10 项为用户解算工程文件夹,第 11 项为用户数据文件夹目录,第 12 项为解算成果目录。若接受其默认的变量设置,输入 y。要修改其中的配置,输入 n,然后根据其提示,输入变量编号来配置变量。这里使用默认设置,输入 y。


随后安装程序将检测是否存在所需的文件夹,当提示某个文件夹不存在时(上面第10 P、11 D、12 S三个目录一般都不存,需要创建),程序提示是否创建,键入 y 创建即可。


之后按 Enter 键继续,再按 2 下载更新文件。由于下载更新文件的过程可能会很慢,若已经有更新文件(本文为 update_2013-07-18.tar.gz),Ctrl+C 取消更新文件下载,另开终端并将更新文件复制到 /opt/BERN52 目录下,然后回到原终端中输入 y

好,重点来了:继续之前,先来填坑。首先对 BERN52 目录赋予执行权限,另开终端进入 /opt 进行权限设置:

cd /opt/BERN

sudo chmod -R 777 . # or $  sudo chmod -R 777 *

然后,查询 ld 的版本:

ld -v

GNU ld (GNU Binutils for Ubuntu) 2.24

版本大于 2.22,需要修改 BERN52/MENU/menu.pro 中的内容。vim打开该文件,找到如下行:

##QMAKE_LIBS += -lz

去除前面的注释 #,保存后退出。然后,回到原终端,按 3 添加新用户环境。

完成后,继续按 4 编译图形界面菜单。成功后提示:

*******************************************
* Bernese menu compiled successfully.
*******************************************

菜单编译成功后按 5 继续编译程序(过程有点耗时),如果看到下面的提示,那么恭喜你,Bernese 软件已经编译安装成功了!

*******************************************
* Fortran programs compiled successfully.
*******************************************


注意:如果 5 编译程序的时候,出现了如下错误:

###############################################
# Error compiling 100 of 100 Fortran programs #
# Please check the log file...                #
###############################################

1、检查QT4的环境变量是否添加正确;

2、可能就是BERN52权限和ld版本号问题,参照上面修改完成以后,返回安装程序引导,按 0 重新执行 1~5 步,根据经验,应该会成功编译了。如果不行进行3;

3、查看/opt/BERN52/GPS/EXE/COMPLINK.log,发现如下错误:

Compiling the programs for root@cc (linux)

--------------------------------------------------------------------------------

Taget ($C) = /opt/BERN52

Compiler   = GNU

sh: 1: cd: can't cd to /opt/BERN52/LIB/OBJ_GNUc

Started at = Mon Mar 30 12:06:29 2020

================================================

cd /opt/BERN52/LIB/OBJ_GNUc

make -i -B  

make: *** No rule to make target `menu.tmp', needed by `Makefile'.  Stop.

================================================

Compilation finished

Mon Mar 30 12:06:29 2020

********************************************************************************

ERROR: Compilation not successful!

********************************************************************************

make: *** No rule to make target `menu.tmp', needed by `Makefile'.  Stop.

Use of uninitialized value in concatenation (.) or string at /opt/BERN52/GPS/EXE/cmp_util.pm line 321, <STDIN> line 34.

ERROR: Compilation not successful! 

ERROR: Compilation not successful!

由上面查看cmp_util.pm文件,是perl脚本,初步确定应该是perl运行错误导致。

解决:出现上面错误,严格按照一步一步进行,重新开始!(我一直出现上面错误,删除文件,多次重新安装后成功了)


四,添加用户

使用 root 用户进行日常的数据解算操作既不方便也不安全。为了让除 root 以外的其他用户也能使用 Bernese,需要使用新用户加载环境变量设置文件,并启动配置程序。在终端中执行如下命令:

source /opt/BERN52/GPS/EXE/LOADGPS.setvar

perl /opt/BERN52/GPS/EXE/configure.pm

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


五、配置环境变量

为了在每次开机后都能直接使用 Bernese 软件,需要配置在系统启动时自动加载环境变量。编辑用户主文件夹内的配置文件,Bash 用户打开 ~/.bashrc,C Shell 或 TC Shell 用户打开 ~/.cshrc,为其添加以下内容:

# Load environment variables for Bernese GNSS Software

source /opt/BERN52/GPS/EXE/LOADGPS.setvar


之后将可以启动 Bernese 了,你可以在终端中root权限下键入 G 试一下。若程序安装成功,将弹出类似下面的 Bernese 软件窗口:


参考地址:

https://blog.csdn.net/spacefan/article/details/94559873

https://zhuanlan.zhihu.com/p/72674874

http://gnss.help/2018/07/02/ubuntu-install-bernese/index.html

PDF下载:

Bernese 5.2 + Ubuntu 16.04 编译安装完全指南 - 知乎.pdf

Ubuntu 操作系统安装 Bernese _ GNSS Helper.pdf




https://blog.sciencenet.cn/blog-858128-1225878.html

上一篇:G-Nut/Anubis介绍
下一篇:PerceptIn RTK GNSS System
收藏 IP: 58.19.92.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (4 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-23 22:50

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部