doxygen: 在Windows上源码编译

news2024/12/25 12:27:06

文章目录

    • 1. 目的
    • 2. 思路
    • 3. 安装 Chocolatey
    • 4. 用 choco 安装 bison 和 flex
      • 安装 gs:
      • 安装 libiconv
    • 5. 编译报错

在这里插入图片描述

1. 目的

在 windows 上源码编译 doxygen, 改代码加功能。

2. 思路

doxygen 依赖 flex 和 bison,

  • 手动编译 flex 和 bison 很麻烦
  • 可以用 msys2 安装, 但目前不知道怎样和 Visual Studio C++ 编译器 cl.exe 配合
  • 查看了 doxygen 的 CI 配置, 用的 chocolate 工具(选它)

3. 安装 Chocolatey

管理员权限运行 powershell

set-ExecutionPolicy AllSigned
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1')) 

在这里插入图片描述

4. 用 choco 安装 bison 和 flex

 choco install -PackageName winflexbison

在这里插入图片描述
和 github action 略有区别
在这里插入图片描述

安装 gs:

choco install ghostscript

安装 libiconv

doxygen 的 git 仓库中 winbuild 目录存放了 libiconv 的 windows 库, 它应该是从 https://github.com/pffang/libiconv-for-Windows 编译出来的。直接用即可。

5. 编译报错

error C2001: 常量中有换行符

编码问题,日文不识别。解决方法是在 CMakeLists.txt 中插入一段

#设置源代码utf-8格式,控制台运行时采用gbk格式
if(CMAKE_C_COMPILER_ID STREQUAL "MSVC" OR CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
  set(CMAKE_C_FLAGS   "${CMAKE_C_FLAGS}   /source-charset:utf-8 /execution-charset:gbk")
  set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /source-charset:utf-8 /execution-charset:gbk")
endif()

在这里插入图片描述

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

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

相关文章

孤独患者的树洞?AI情感陪伴是如何实现的?

一、人工智能大模型 自ChatGPT发布以来,越来越多的中国企业和研究机构扎堆冲入AI大模型赛道,试图在自然语言处理、机器翻译、问答等方面取得重大突破。在未来,这些模型有机会应用于金融、医疗、电商等各领域。 人工智能大模型的应用不仅可以…

矿山电子封条 yolov8网络模型

矿山电子封条通过yolov8网络模型利用AI图像智能视频识别等技术,矿山电子封条yolov8网络模型智能分析异常情况,包括不限于人数变化情况、出入井人员以及相关现场设备开停状态进行自动全天候远程监控。YOLOv8 主要参考了最近提出的诸如 YOLOX、YOLOv6、YOL…

为什么Windows/Linux 的端口数量最大限制为65535?

端口0:一般是用来表示所有端口,即1–65535。另外其他答主也提到1–1024是知名端口号,但那是很久以前数据,是该更新了。举几个大于1024的知名端口号:1614/1615:思科ISE用于AAA的端口号1812/1813:…

【腾讯云 Finops Crane 集训营】基于 Kubernetes 实现云资源分析与成本优化平台

基于 Kubernetes 实现云资源分析与成本优化平台 一、基本介绍1.主要功能2.整体架构 二、基于 Kubernetes 实现云资源分析与成本优化平台1.准备工作2.安装 Prometheus/Grafana 软件包3.安装 Crane 软件包4. 使用智能弹性 EffectiveHPA4.配置集群 三、功能验证1.成本展示2.资源推…

3分钟了解FactoryBean的作用和底层工作原理

大家好,我是冰点,本节我们通过对FactoryBean 接口源码解析,以及使用示例剖析,让大家3分钟了解FactoryBean的作用和底层工作原理。以及FactoryBean的使用场景,学以致用。 FactoryBean是Spring框架中的一个接口&#xf…

基于 resnet 对 CIFAR-10 图片进行分类和网络微调

本文基于李沐老师的 实战 Kaggle 比赛:图像分类 (CIFAR-10) 文章目录 数据格式数据加载标签转化划分数据集查看数据搭建网络主训练函数网络训练 数据格式 CIFAR-10 下载地址:https://www.kaggle.com/competitions/cifar-10/data 下拉到最下面有一个 Do…

JavaScript中的Event(事件)详解

Event 对象 Event 对象代表事件的状态,比如事件在其中发生的元素、键盘按键的状态、鼠标的位置、鼠标按钮的状态。 事件通常与函数结合使用,函数不会在事件发生前被执行! 事件句柄 (Event Handlers) HTML 4.0 的新特性之一是能够使 HTML 事…

Maven uber-jar(带依赖的打包插件)maven-shade-plugin

文章目录 最基础的 maven-shade-plugin 使用生成可执行的 Jar 包 和 常用的资源转换类包名重命名打包时排除依赖与其他常用打包插件比较 本文是对 maven-shade-plugin 常用配置的介绍,更详细的学习请参照 Apache Maven Shade Plugin 官方文档 通过使用 maven-shade…

BetaFlight飞控启动运行过程简介疑问跟踪

BetaFlight飞控启动&运行过程简介疑问跟踪 1. 源由2. 【已解存疑】问题一:6.1 Why desiredPeriodCycles is so important to Betaflight task?3. 【已解】问题二:6.2 What root cause has made gyro task to been overrun, so scheduler has to ski…

轮式机械臂小车实现语音控制

1. 功能说明 本文实例将实现语音控制R214e样机运动(前进、后退、左转、右转、拿起、放下)的功能。 2. 电子硬件 在这个示例中,我们采用了以下硬件,请大家参考: 主控板 Basra主控板(兼容Arduino Uno&#x…

港科夜闻|推进湾区产学研融合发展,香港科大(广州)—广州市属国企校企合作专题交流会圆满举行...

关注并星标 每周阅读港科夜闻 建立新视野 开启新思维 1、推进湾区产学研融合发展,香港科大(广州)—广州市属国企校企合作专题交流会圆满举行。本次交流会由香港科大(广州)、广州市人民政府国有资产监督管理委员会主办,越秀集团协办,旨在充分发…

springboot+jsp网上图书商城销售系统java

开发环境 开发语言:Java 框架:springboot 技术:JSP JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 数据库工具:Navicat11 开发软件:eclipse/myeclipse/idea Maven包:Maven…

ubuntu 20.04虚拟内存

ubuntu 20.04虚拟内存 1. 查看自己的虚拟内存 使用top命令或者使用free命令 2. 创建虚拟内存配置文件 # 新建文件夹 cd ~ mkdir swap cd swap# bs 为块的大小,count 创建多少个块 sudo dd if/dev/zero ofswapfile bs1M count2048# 修改权限 sudo chmod 0600 …

系统分析师:六、企业信息化战略与实施 练习题

目录 1、十二五的七大国家战略新兴产业体系 2、标准化的三个方面 3、信息的属性 4、电子政务描述 5、数据产品管理 6、企业门户 7、企业应用集成 8、电子商务标准体系 9、电子商务标准范畴 10、知识管理显性和隐形知识 11、决策支持系统 12、CRM解决方案 13、CRM核…

用Vue写教务系统学生管理

文章目录 一.首先创建新的Demo二.在APP里面绑定DemoStudent三.源码附上四.效果图&#xff08;新增记录还未实现&#xff09; 一.首先创建新的Demo 二.在APP里面绑定DemoStudent <template><img alt"Vue logo" src"./assets/logo.png"><!--…

华为OD机试真题 Java 实现【最小的调整次数】【2023Q1 100分】

一、题目描述 有一个特异性的双端队列&#xff0c;该队列可以从头部或尾部添加数据&#xff0c;但是只能从头部移出数据。 小A依次执行2n个指令往队列中添加数据和移出数据。 其中n个指令是添加数据 (可能从头部添加、也可能从尾部添加)&#xff0c;依次添加1到n&#xff0c…

超稳定ChatGPT镜像网站,小白适用,赶紧收藏【持续更新中】

&#x1f482;作者简介&#xff1a; THUNDER王&#xff0c;一名热爱财税和SAP ABAP编程以及热爱分享的博主。目前于江西师范大学会计学专业大二本科在读&#xff0c;同时任汉硕云&#xff08;广东&#xff09;科技有限公司ABAP开发顾问。在学习工作中&#xff0c;我通常使用偏后…

无代码开发引路,重塑企业数字生产力

互联网时代&#xff0c;信息的传递与共享成为企业运营的核心环节。传统的软件开发模式已经不能满足企业数字化转型的需要&#xff0c;而无代码开发平台可以在不改变底层技术架构的前提下&#xff0c;提供一种高效、低成本、灵活、易用的软件开发解决方案。相较于传统代码编写&a…

[山海关crypto 训练营 day13]

日常鼓励自己&#xff1a;世界上只有想不通的人&#xff0c;没有走不通的路。 [长安杯 2021]checkin 题目代码和数据 from Crypto.Util.number import * from secret import flag p getPrime(1024) q getPrime(16) n p*q m bytes_to_long(flag) for i in range(1,p-q):m…

事务AOP

事务&AOP 事务管理 在数据库中我们已经学过事务了。 事务是一组操作的集合&#xff0c;它是不可再分的工作单位。事务会把所有的操作作为一个整体&#xff0c;一起向数据库提交或者撤销操作请求。所以这组操作要么是同时成功&#xff0c;要么同时失败。 事务的操作主要…