Win10 RTKLIB编译工程构建

说明

本文基于vscode + mingw-w64 构建rtklib代码编译,命令行部分,不包含可视化的界面部分

Step1. 构建vscode + mingw-w64环境

该步骤比较简单,主要步骤简述:

  • 下载mingw-64,解压,加入环境变量
  • 下载vscode,安装
  • 下载windows下的git工具
  • 下载RTKLIB源代码
  • 默认下载的是master分支,但是看master分支的readme,发现很老了,估计后面的版本都不是基于master出的,因此需要切换到release的tag上
    查看tag
    命令如下:
    git checkout v2.4.3-b34

编译

  • 从makefile结构来看,无法直接编译所有的app,先以任意一个app编译为例,后面可以优化
  • 进入目录:RTKLIB/app/consapp/convbin/gcc,右键打开git bash
    cd RTKLIB/app/consapp/convbin/gcc
  • 右键使用git bash打开终端,定义编译器类型:export CC=gcc(看makefile结构,需要自己定义CC变量),执行make命令
  • 修复编译问题1:cannot find -lrt
    这是Linux下的库,直接从makefile里面删除该链接库
  • 修复编译问题2

    提示找不到获取时间符号
    找不到获取时间函数符号
    查询发现该函数属于winmm库,在makefile里面把这个库加入
    加入winmm库后的makefile
  • 编译完成,生成可执行文件


    产生的可执行文件

其他 -- 编译UT工程遇到的问题

  • 修复编译问题1:mkdir接口找不到定义,这里是没有配置主机环境,当前目录makefile的CFLAGS增加定义 -DWIN32,如下:
    修改后的Makefile
  • 修复编译问题2:
    提示找不到线性代数库
    找不到库文件
    顺便了解一下两个库:
    -- LAPACK(Linear Algebra PACKage):用于数值计算的函式集
    -- BLAS(Basic Linear Algebra Subprograms)即基础线性代数子程序库,里面拥有大量已经编写好的关于线性代数运算的程序
    直接下载编译好的:http://icl.cs.utk.edu/lapack-for-windows/lapack/
    下载库文件
    看上去编译好的只有动态库,放到mingw安装目录 mingw64\lib\gcc\x86_64-w64-mingw32\8.1.0 下面

你可能感兴趣的:(Win10 RTKLIB编译工程构建)