||
本实验软件说明:
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中添加以下命令:
上述操作以后,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)。然后安装程序继续打印出当前应用的环境变量:
这里的第 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
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2025-1-15 14:13
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社