周锋博士在2017年开源了一个项目:多系统 GNSS 非差非组合精密单点定位软件GAMP

GAMP: An open-source software of multi-GNSS precise point positioning using undifferenced and uncombined observations。

下载地址

https://www.ngs.noaa.gov/gps-toolbox/GAMP.htm

1、所需源代码和依赖库文件所在位置:

GAMP\mannual_GAMP\GAMP_src\Windows
在这里插入图片描述

2、项目设置

1)打开VS2019,新建一个Visual C++的空项目,保存路径和名称自行设定;

在这里插入图片描述
在这里插入图片描述

2)将GAMP\mannual_GAMP\GAMP_src\Windows\gamp_c\gamp_src目录复制到刚刚新建的项目中

在这里插入图片描述

3)分别在项目中将头文件.h和源文件.c文件添加相应位置!

在这里插入图片描述

4)修改项目属性:
【 配置属性 -> C/C++ ->预处理器 ->预处理器定义】添加如下:

WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions);_CRT_SECURE_N
O_WARNINGS;ENAGLO;ENACMP;ENAGAL;ENAQZS;NFREQ=3

在这里插入图片描述

【配置属性->链接器->调试->生成调试信息】 调整为 生成调式信息(/DEBUG)

在这里插入图片描述

【配置属性-> C/C++ ->常规->调试信息格式】调整为 C7

在这里插入图片描述

5)添加多线程依赖库
将GAMP\mannual_GAMP\GAMP_src\Windows\pthreads-w32-2-9-1-release目录拷贝到C盘
然后在项目中附加目录【配置属性-> C/C++ ->常规->附加目录】 添加 C:\pthreads-w32-2-9-1-release\Pre-built.2\include

在这里插入图片描述

【配置属性->链接器->常规->附加库目录】添加 C:\pthreads-w32-2-9-1-release\Pre-built.2\lib\x86
在这里插入图片描述

【属性->链接器->输入->附加依赖项】添加 pthreadVSE2.lib

在这里插入图片描述

6)添加Linux下C程序头文件unistd.h
mannual_GAMP\GAMP_src\Windows目录下面的两个文件unistd.h、dirent.h复制D:\Program
Files (x86)\Microsoft Visual
Studio\2019\Community\VC\Tools\MSVC\14.16.27023\include 下面(找到你安装的Visual Studio 2019的目录);

3、编译及error解决

完成以上设置和添加以后,点击【生成->生成解决方案】出现大量错误:
1)错误C4996’sprintf’: This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use
_CRT_SECURE_NO_WARNINGS. See online help for details.pppc:\users\cugch\desktop\gamp\test\ppp\ppp\gamp_src\gamppos.c374

解决方法:
【项目属性->配置属性->C/C+±>预处理器->预处理定义】添加两个宏

_CRT_SECURE_NO_DEPRECATE
_SCL_SECURE_NO_DEPRECATE

在这里插入图片描述

2)从新运行,出现错误:
错误C4703使用了可能未初始化的本地指针变量“lam”ppp gamppos.c571

解决方法:转到lam定义发现确实没有初始化,而是在后面直接赋值;修改代码,初始化的时候指向NULL;
在这里插入图片描述
在这里插入图片描述
Linux的c语言和Windows的c语言是有区别的吧!

3)从新运行,出现错误:
错误:无法打开unistd.h

将./mannual_GAMP\GAMP_src\Windows中的dirent.h&unistd.h两个文件复制到
D:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\include

或者复制到D:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30037\include

4、重新编译

在这里插入图片描述

5、编译成功

在这里插入图片描述

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐