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

前言

前两天尝试用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. 运行ci目录下的appveyor.bat脚本。这将使用CMake配置项目并进行初始构建。cd到你克隆的OpenCPN根目录下,执行:
ci\appveyor.bat
  1. 执行完毕后就可以在OpenCPN\build文件夹下找到vs的项目文件OpenCPN.sln了,然后就可以直接用vs打开来项目重新构建了,此外也可以使用命令直接构建,两种方法选一种操作就可以。(推荐使用第2种,图形界面更加直观)
    (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.rhkb.cn/news/37753.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jmeter简单使用以及报告生成

jmeter入门 前置准备jmeter目录介绍jmeter常用组件jmeter简单食用 第一次写文章,主要就是一些简单的自学笔记,记录一下自己以后能方便看,大家需要的话也可自行取用,这些年干下来,我发现内容不重要,重要的是…

学会 IDEA 中的这个功能,就可以丢掉 Postman 了

点击关注公众号,Java干货及时送达👇 转自:oschina 作者:凯京技术团队 my.oschina.net/keking 前言 接口调试是每个软件开发从业者必不可少的一项技能,一个项目的的完成,可能接口测试调试的时间比真正开发写…

分享:python+Windows自带任务计划程序,实现定时自动删微信的video文件夹

目录 0. 背景1. 使用python实现删微信的video文件夹1.1 代码1.2 打包 2. 使用python实现自动添加任务计划程序2.1 代码2.2 打包 3. 使用bat脚本方便操作3.1 手动删.bat3.2 加入定时任务.bat 0. 背景 pc微信实在太占用磁盘空间了,特别是其中的视频文件夹。所以有了这…

搭建本地服务器+jshtml访问mysql并显示输出

文章目录 人生苦短,先问chatgpt1. 用Tomcat配置本地网站2. 访问本地网页3. js访问本地mysql并显示在html中 PS: Chatgpt实在是有点强~~ 今天是悲伤的一天,把mysql密码忘了,网上搜的方法没用,本来以为卸载部分组件就好,…

3句代码,实现自动备份与版本管理

前言: 服务器开发程序、测试版本等越来越多,需要及时做好数据的版本管理和备份,作为21世界的青年,希望这些事情都是可以自动完成,不止做了数据备份,更重要的是做好了版本管理,让我们可以追溯我们…

【编程实践】Linux Shell 编程:使用 循环和递归 实现斐波那契数列代码

用 Linux Shell 编程语言递归实现斐波那契数列代码:循环和递归 Linux Shell 编程语言是一种强大的工具,它可以轻松地实现程序设计语言中的常见算法。 斐波那契数列 斐波那契数列是一种经典的算法,它的定义如下: 斐波那契数列(Fibonacci Sequence)是以递归的方法来定义: …

chatgpt赋能python:Python下载与运行指南-让Python脚本更容易使用

Python下载与运行指南 - 让Python脚本更容易使用 Python已经成为世界上最流行的编程语言之一。Python具有简单易用的特点,几乎可以开始创建任何类型的应用程序或脚本。如果你是一名新手或是一名经验丰富的开发者,Python都是一款优秀的编程语言。 本篇文…

人教版初中英语听力软件,人教版初中英语听力mp3

新目标英语九年级上册Tapescripts所有的翻译 east东方的、eagerness热心、eagle鹰、ear耳朵,听力、early早等。 词汇解析一、east 英 [iːst]   美 [iːst]    adj. 东方的adv. 向东方n. 东方;东部1、east的基本意思是“东,东方”&…

英语语音题

语音题 a i i在nd和gh前发[ai] y th 词首[θ] the、ther结尾[] ch tion ow[哦][奥] oo ar ed 清读[t] 浊元读[d] t、d后读[id] 清:破客服吃屎,戳死赐死 ea o s ou e 欸 b ure 呃 优呃 屋呃 h gh ex 后有元[igz] 后有辅[iks] c al ai wh w在wr、…

ChatGPT: Optimizing Language Models for Dialogue

1.简介 最近ChatGPT很好,本文根据https://openai.com/blog/chatgpt/翻译总结的。 ChatGPT: Optimizing Language Models for Dialogue。如标题,ChatGPT为了对话使用的。 ChatGPT是InstructGPT的兄弟模型,它被训练为以提示prompt的方式遵循…

挑战OpenAI,马斯克宣布xAI正式成立:目标是“了解宇宙真实本质”!

挑战OpenAI,马斯克宣布xAI正式成立:目标是“了解宇宙真实本质”! 一、马斯克官宣xAl硬刚OpenAl二、创始团队1/3成员是华人三、马斯克下了一盘棋 北京时间7月13日凌晨,马斯克在Twitter上宣布:“xAI正式成立,…

昨天OpenAI GPT-4,今天微软Copilot,轮番上阵碾压谁?

来源:《飞哥说AI》公众号 作者|高佳 创意|李志飞 微软Copilot横扫Office全系产品,正式改名为Microsoft 365 ,其野心昭然。 微软全家桶自带AI智能驾驶模式,意味着 Windows 全AI系列新品将火速渗透各行各业…

自然语言处理:Word2Vec

每种动物都有自己的语言,机器也是!自然语言处理(NLP)就是在机器语言和人类语言之间沟通的桥梁。 NLP通常有情感分析、文本挖掘、信息抽取、信息检索、问答/对话系统(聊天机器人)、语音识别、机器翻译等应用…

周鸿祎:ChatGPT可能两三年内产生自我意识;字节加入大模型之战;Ubuntu下一版本默认不再支持Flatpak| 极客头条...

「极客头条」—— 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧。 整理 | 苏宓 出品 | CSDN(ID:CSDNnews) 一分钟速览新闻点&#xf…

chatGPT在线网页写论文

帮我写一篇关于秦始皇对于中国的影响论文 秦始皇,即嬴政,是中国历史上的伟大统治者之一。他在位期间统一了中国各个诸侯国,建立了秦朝,并为中国历史上的统一奠定了基础。秦始皇对于中国的影响是深远而持久的,不仅在政…

如何加速大模型开发?技术方案拆解来了:昇思MindSpore技术一览

随着ChatGPT爆火出圈,狂飙之势从22年底持续到23年初,与以往的技术突破不同的是,此次的大模型不仅被技术界关注,而且备受投资界、产业界和大众消费者的追捧,使它成为历史上最快月活过亿的现象级应用,继而引发…

Python项目:基于爬虫+Flask实现招聘岗位数据分析与可视化

在 基于爬虫Flask实现豆瓣电影Top250数据分析 的基础上,进一步实战,开发出本项目 基于爬虫Flask实现的招聘岗位数据分析与可视化,干货多多,也学到了很多的东西。 文章目录 1、项目简介:2、成果展示:3、后台展示4、项目总结: 1、项目简介: 项目主要是对招聘网站 51job 上的招聘信…

微信小程序输入框字数限制以及计算

wxml代码如下: <textarea class"textarea-bg font_s33 font_c31" id"information" maxlength150 placeholder"请输入遇到的问题或建议" name"information" value"{{information}}"bindinput"getDataBindTap"&…

百度推出可24时直播带货的AI数字人

我是卢松松&#xff0c;点点上面的头像&#xff0c;欢迎关注我哦&#xff01; 前几天我还说做直播太内卷&#xff0c;运营成本太高了呢&#xff0c;今天百度就推出了AI数字人&#xff0c;同时推出了曦灵数字人直播平台。它最大的特色功能就是&#xff1a; (1)有基础文本&#…

从开店营销到智能化私域运营,有赞发布人工智能引擎Jarvis

“以往在私域发起一场营销活动&#xff0c;从活动策划&#xff0c;到历史数据分析&#xff0c;再到内容排期&#xff0c;整个策划阶段往往需要一周以上的时间&#xff0c;而现在通过营销画布&#xff08;MA&#xff09;以及其中内嵌的人工智能能力&#xff0c;只需要30分钟不到…