Visual Studio Community 2022 + Win10 编译 OpenCPN 5.9.0 记录

news2024/11/28 4:44:52

前言

前两天尝试用vs2017编译OpenCPN5.0.0,前后折腾了两三天总算编译成功了。官网给出的编译过程比较简单,我在实际编译过程中遇上了很多很多的问题,最多的就是缺少库,好在最后编译通过了。

后来浏览OpenCPN官网的时候发现发布了“5.8.0 Fast Track”,说的就是5.8.0以上的版本的快速编译,顿时感觉之前白折腾了。“5.8.0 Fast Track”提供了编译过程中用到的批处理文件,直接一键执行就行了,省去了手动安装库、设置环境变量的步骤,感觉不错于是在此记录一下。

构建的步骤

(一) 安装 Visual Studio Community 2022

官网链接:https://visualstudio.microsoft.com/vs/community/
注意:需要安装C++的相关组件,为了保证安装完整,我选的有点多。
在这里插入图片描述

(二)安装 Git

官网链接:https://git-scm.com/
默认选项不用更改,直接下一步下一步就行了。

(三)安装 Chocolatey

安装步骤

Chocolatey是用于Windows系统的一款软件管理工具。用于完成Windows中软件的搜索、安装、卸载等操作。既可以使用命令行完成也可以使用图形界面。

  1. 以管理员权限打开Windows PowerShell。
  2. 在打开的“Windows PowerShell”中输入如下命令:
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))

然后回车,就会自动下载并安装。

  1. 安装后在Windows PowerShell中输入:
choco

显示版本号,则安装成功。

  1. 安装图形化界面(非必须),代码如下:
choco install chocolateygui

安装之后输入 chocolateygui 打开图形界面(或在开始菜单中打开Chocolatey Gui 软件),选择左侧菜单中的chocolatey,安装你想安装的软件即可。
在这里插入图片描述

常用命令

// 更新chocolatey命令
choco upgrade chocolatey
// 安装软件包
choco install 软件包名称
// 安装git:
choco install git.install
// 安装Chrome:
choco install googlechrome
// 安装VS Code:
choco install vscode
// 更新软件包
choco upgrade 软件包名称
// 卸载软件包
choco uninstall 软件包名称

(四)安装用到的库

安装用到的库非常的多,每台电脑的环境有又不一样很难全部列出来,只能是在安装过程中出现错误后按照错误提示再去找。这里我只列举其中几个库的安装步骤。

  1. 安装7z,构建脚本用到了这个,以管理员身份运行CMD,输入choco install 7z
  2. 安装Gettext并添加环境变量,下载链接。

(五)克隆项目并开始构建

  1. 克隆项目源码,访问不了github的话可以在git bash设置代理或者使用码云加速。
    git config --global http.proxy 'http://172.16.18.104:65208' // 设置代理
    git config --global https.proxy 'https://172.16.18.104:65208'
git clone https://github.com/OpenCPN/OpenCPN.git
  1. 以管理员身份运行x86 Native Tools Command Prompt for VS 2022,cd到你克隆的OpenCPN根目录下,执行:
buildwin\win_deps.bat

然后等待脚本执行完毕。

  1. 执行完毕后就可以在OpenCPN\build文件夹下找到vs的项目文件OpenCPN.sln了,此时你可以直接用vs打开来构建项目也可以使用命令构建,两种方法选一种操作就可以。
    (1)使用命令直接构建,在x86 Native Tools Command Prompt for VS 2022中执行cmake --build . --target opencpn --config Release,等待执行完毕即可。
    (2)使用vs打开OpenCPN.sln,把opencpn设为启动项目开始构建就行了。
  2. 编译过程中肯定会有报错,根据错误信息解决一下,最后完美运行,断点可设。在这里插入图片描述

(六)小结

  1. 官网给出的5.8以上版本的编译步骤比5.0简单太多了,但也不会一下就能编译成功,根据错误信息一个一个解决就行了。
  2. 我在编译过程中也遇到很多问题,好在最后通过百度和ChatGpt都解决了。
  3. 最后把我配置好的虚拟机放在云盘上,下载链接见附录。
  4. OpenCPN v5.0.0使用的是wxWidgets v3.1.2,而在5.8.0以上使用的是wxWidgets 3.2。

(七)附录

  1. OpenCpn 5.8.0 Fast Track
  2. Translating OpenCPN
  3. 配置好的虚拟机

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/646767.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Spring】开发框架Spring核心技术含Resource接口详细讲解

前言 Spring 是 Java EE 编程领域的一款轻量级的开源框架,由被称为“Spring 之父”的 Rod Johnson 于 2002 年提出并创立,它的目标就是要简化 Java 企业级应用程序的开发难度和周期。 Spring 自诞生以来备受青睐,一直被广大开发人员作为 Java…

测试工程师常用的10个python库,面试必备哦

目录 前言 1、os库 2、sys库 3、time库 4、selenium库 5、unittest库 6、pytest库 7、email库 8、appium库 9、pymsql库 10、requests库 总结: 前言 今天给各位小伙伴带来的是测试工程师常用的10个python库,相信有些小伙伴肯定知道一些库&am…

aclocal-1.14 is missing on your system

在编译 bluez 的时候出现如下错误: 没有找到 aclocal-1.14, 但是有 aclocal-1.13 版本的,那最直接的方法就是修改 Makefile了,搜索出来 Makefile 指定了 aclocal-1.14,修改成 aclocal-1.13 即可。修改完还会有如下的错…

数据科学导论

《数据科学导论》 重点归纳 第1~4章 数据科学研究的问题边角广泛,只要是和数据收集、清洗整理、分析和挖掘有关的问题都是数据科学要研究的问题;数据科学的主要方法:有监督学习、无监督学习、半监督学习;有监督学习中&#xff…

初见PlayWright

PlayWright特色 跨浏览器:PlayWright支持所有现代的浏览器渲染引擎,包括Chromium、WebKit、Firefox,这意味着它可以驱动像Chrome、Edge、Firefox、Safari等主流浏览器跨平台:基于浏览器的特性,可以在Windows、Linux和…

卡方检验笔记

文章目录 一、定义二、用途三、公式四、案例4.1 手工统计4.2 python统计4.3 SPSS统计 一、定义 卡方检验属于非参数检验,由于非参检验不存在具体参数和总体正态分布的假设,所以有时被称为自由分布检验。原假设 H 0 H_{0} H0​:观察频数与期望…

大龄、零基础,想转行做网络安全。怎样比较可行?一般人我还是劝你算了吧

昨晚上真的给我气孕了。 对于一直以来对网络安全兴趣很大,想以此作为以后的职业方向的人群。 不用担心,你可以选择兼顾工作和学习,以步步为营的方式尝试转行到网络安全领域。 那么,网络安全到底要学些什么呢? &…

怎么快速给需要的网路标记颜色?

引入 我们在走线的时候,需要知道那些类型的线需要先走,接下来又要走那些类型的线,然后依次走完,如果在团队中,这一类型的线分配给这个人走,哪一类型的线有分配给那个人走。而在不管是那单个人,还…

效果图渲染的几大实用技巧

效果图渲染是建筑、室内、景观、产品设计等行业中非常重要的一环。一个高质量的效果图可以让客户更好地了解和感受设计方案,提高设计师的竞争力。但是渲染效果的好坏和速度都取决于设计师的技巧和工具。本文将介绍几大实用技巧,帮助设计师更好地进行效果…

ASEMI代理光宝IGBT驱动器LTV-155E规格,LTV-155E封装

编辑-Z LTV-155E参数描述: 型号:LTV-155E 储存温度Tstg:-55~125℃ 工作温度Topr:-40~105℃ 输出IC结温度TJ:125℃ 总输出电源电压(VCC –VEE):35V 平均正向输入电流IF:25mA 反向输入电压…

对vite的理解

🐱 个人主页:不叫猫先生,公众号:前端舵手 🙋‍♂️ 作者简介:2022年度博客之星前端领域TOP 2,前端领域优质作者、阿里云专家博主,专注于前端各领域技术,共同学习共同进步…

强化学习笔记-13 Policy Gradient Methods

强化学习算法主要在于学习最优的决策,到目前为止,我们所讨论的决策选择都是通过价值预估函数来间接选择的。本节讨论的是通过一个参数化决策模型来直接根据状态选择动作,而不是根据价值预估函数来间接选择。 我们可以定义如下Policy Gradien…

软件测试外包干了3年,感觉废了..

先说一下自己的情况,大专生,18年通过校招进入湖南某软件公司,干了接近3年的功能测试,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了3年的功能测试&…

官方都不告诉你的 Windows ISO 下载方式

目录 一、背景二、下载 一、背景 我们都知道,在日常生活中,经常会遇到各种操作系统的安装,如 Windows、Linux 等,一般都会通过 ISO 来安装。而在很多第三方地址中下载的 ISO 镜像通常会捆绑一些流氓软件,很是难受。那…

Java 中的异常处理

认识异常 程序中可能会有很多意想不到的问题的出现,这些问题中,有些是在编写阶段时就无法编译通过,比如写代码时变量名写错,出现语法错误 java.lang.Error: Unresolved compilation problem ……;有些是在程序运行的时…

从零开始Vue项目中使用MapboxGL开发三维地图教程(四)改变鼠标style、地图置于单击feature中心、量测距离和polgon面积和中心点坐标

文章目录 1、飞行平移到鼠标点击图层属性的地图中心位置2、当鼠标光标进入“圆”图层中的某个要素时,将其更改为指针3、量测距离4、量测area面积和中心点坐标 1、飞行平移到鼠标点击图层属性的地图中心位置 //鼠标点击事件map.on("click", "iconImag…

基于Amazon SageMaker平台部署Stable Diffusion模型实现——图片识别

序言: 当谈到机器学习和人工智能的开发和部署时,Amazon SageMaker是一个非常强大和全面的平台。作为一项托管式的机器学习服务,Amazon SageMaker提供了一套完整的工具和功能,帮助开发者轻松构建、训练和部署机器学习模型。 首先&…

程序猿成长之路之密码学篇-AES算法解密详解及代码呈现

各位csdn的小伙伴们大家好呀,我又回来了,这篇文章为上一次介绍AES加密算法的姊妹篇,重点将会详细介绍一下AES算法的解密过程并呈上AES加解密的代码。【暂时不包含iv即偏移量】。下面请跟随我一同进入AES解密的世界。 AES加密详解 如果有小伙…

ffmpeg编译笔记:ubuntu18.04编译ffmpeg5.1 x86与64

一、前言 本篇描述了ffmpeg5.1在ubuntu18.04上的编译经验。编译后的库支持h264,h265软硬解码,支持https,支持SDL。本篇同时描述openssl在ffmpeg中的编译经验,以及提供ffmpeg编译和openssl编译的32位和64位的配置命令。 二、相关…

这8道接口测试面试题

接口测试常见的问题了。 大家乍一看! 接口测试面试题 这几个问题,能答出来几个?有没有8个都能够完美的答出来的?在留言区打出你的数字。(0~8) 这些问题你回答起来,不要吞吞吐吐只说几个关键字…