当前位置: 首页 > web >正文

MSVC编译KDChart过程

MSVC编译KDChart过程

一、下载KDChart源文件

GitHub源文件

查看文件夹里的INSTALL.txt,可以看到需要CMake编译。

中文版

以下是使用 CMake 构建系统安装 KD Chart 的说明。
需要 CMake 3.3 或更高版本。Qt 版本支持:* KD Chart 2.5.0 及以下版本需要 Qt4* KD Chart 2.5.1 至 2.7.2 版本需要 Qt4 到 Qt5.15* KD Chart 2.8.x 移除了 Qt4 支持(即仅支持 Qt5)* KD Chart 3.0 及以上版本需要 Qt5.15.0 到 Qt6.x(如果需要旧版 Qt5 支持,请联系 info@kdab.com)另请注意,使用 Qt6 构建需要支持 C++17 的编译器,
而使用 Qt5 构建支持 C++11 即可。请查看 CMakeLists.txt 文件顶部的注释,
了解可传递给 cmake 的可用配置选项。安装目录在 Windows 上默认为 c:\KDAB\KDChart-<version>,
在非 Windows 系统上默认为 /usr/local/KDAB/KDChart-<version>。 你可以通过向 cmake 传递选项 -DCMAKE_INSTALL_PREFIX=/install/path 来更改此位置。1) 从 KD Chart 安装的顶级目录创建一个构建目录:mkdir build然后进入该构建目录:cd build2) 现在根据构建类型运行以下 'cmake' 命令之一:cmake -DCMAKE_BUILD_TYPE=Debug ..cmake -DCMAKE_BUILD_TYPE=Release ..cmake -DKDChart_STATIC=True -DCMAKE_BUILD_TYPE=Debug ..cmake -DKDChart_STATIC=True -DCMAKE_BUILD_TYPE=Release ..若要指定安装位置,可参考以下示例:cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=C:/kdchart ..cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=/opt/kdchart ..3) Unix设置 LD_LIBRARY_PATH 指向 KD Chart 安装的 lib 目录。如果你还没有设置 LD_LIBRARY_PATH,可在终端中运行:% LD_LIBRARY_PATH=/path/to/kdchart/lib:$LD_LIBRARY_PATH% export LD_LIBRARY_PATH必须将上述命令添加到你的 .bashrc 或类似文件中才能永久生效。当然,你也可以在使用 KD Reports 构建软件之前在 shell 中运行这些命令,但这种情况下设置仅在当前 shell 中有效。4) MacOS操作步骤同上,但使用 DYLD_LIBRARY_PATH 代替 LD_LIBRARY_PATH5) Windows若要运行可执行文件,将 KD Chart dll 文件所在路径(kdchart\bin)添加到 PATH 环境变量中。例如:set PATH=\path\to\kdchart\bin;%PATH%若要进行开发,将 KD Chart lib 文件所在路径(kdchart\lib)添加到 LIB 环境变量中。例如:set LIB=\path\to\kdchart\lib;%LIB%6) 输入以下命令构建所有内容:从 KD Chart 顶级目录运行:% make    # Unix, Mac% nmake   # Windows7) (可选)安装 KD Chart:从 KD Reports 顶级目录运行:% make install   # Unix, Mac% nmake install  # Windows这会将必要的文件复制到安装路径的子目录中:对于 Unix/Linux、Mac:/usr/local/KDAB/KDChart-VERSION/对于 Windows:C:\KDAB\KDChart-VERSION\8) 查看示例应用程序。它们将帮助你开始使用 KD Chart。== 测试 ==
若要构建测试工具,请向 CMake 传递 -DKDChart_TESTS=true 参数,如下所示:% cmake -DKDChart_TESTS=true然后运行 'make test' 来执行单元测试。== 使用 ==
在你的 CMake 项目中添加以下内容find_package(KDChart CONFIG REQUIRED)如果使用 Qt6,则添加find_package(KDChart-qt6 CONFIG REQUIRED)并链接到导入目标 KDChart::kdchart。
这就是你需要做的全部操作(导入目标还会包含头文件目录)你可能还需要根据 KDChart 的安装位置设置 CMAKE_PREFIX_PATH 环境变量。

二、下载安装CMake

注意:

如果使用Qt6.x 编译,可以不用安装,Qt6自带CMake,还不用配置!(直接看 Qt6.x 编译KDChart `)

https://cmake.org/download/

三、编译

1.填写源文件目录和build文件夹目录

在这里插入图片描述

2.Configure配置项目工程

在这里插入图片描述

3.等待报错

1.Could not find a package configuration file provided by “Qt6”
移除KDChart_QT6选择

在这里插入图片描述

自定义输出目录(注意C盘有权限问题)

在这里插入图片描述

根据需求可以构建例子

在这里插入图片描述

记得此次点击Configure

2. string no output variable specified 未指定输出变量

在这里插入图片描述

src/CMakeList.txt 491行

在这里插入图片描述

情况一:CMAKE 里面找 CMAKE_BUILD_TYPE

情况二:如果没有找到 Add Entry
在这里插入图片描述

没有找到则添加

在这里插入图片描述

输入需要构建模式

在这里插入图片描述

记得此次点击Configure

还有错看:

1.KDChart3.0编译过程-使用QT5.15及QT6.x编译

2.KDChart2.8编译过程-使用VS+CMake-MSVC2017

4.生成

1. 配置Generate

在这里插入图片描述

2. 打开.sln

或者 使用Open Project

在这里插入图片描述

在这里插入图片描述

右键ALL_BUILD->生成

堆空间不足错误:多生成几次,或者查

“EntryDialog::~EntryDialog”: 不能定义编译器生成的特殊成员函数(必须首先在类中声明)

在这里插入图片描述

添加声明

常量中有换行符

在这里插入图片描述

使用SmartCharsetConverter批量转换

一般不会出现这种情况,我的是因为使用AI添加的中文注释

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

3.ALL_BUILD生成没问题,右键INSTALL->生成
NSTALL失败

CMake Error at src/cmake_install.cmake:36 (file):
file INSTALL cannot find
/build/src/KDChart/kdgantt.h": No error.

在这里插入图片描述

在这里插入图片描述

error MSB3073: 命令“setlocal
error MSB3073: E:\WorkTool\CMake-4.0.0\bin\cmake.exe -DBUILD_TYPE=Debug -P cmake_install.cmake
error MSB3073: if %errorlevel% neq 0 goto :cmEnd
error MSB3073: :cmEnd
error MSB3073: endlocal & call :cmErrorLevel %errorlevel% & goto :cmDone
error MSB3073: :cmErrorLevel
error MSB3073: exit /b %1
error MSB3073: :cmDone
error MSB3073: if %errorlevel% neq 0 goto :VCEnd
error MSB3073: :VCEnd”已退出,代码为 1。

在这里插入图片描述

解决方案在src/CMakeLists.txt 的 196 行 添加
# Adding the following line of code will solve the “file INSTALL cannot find build/src/KDChart/kdgantt.h” problem.
configure_file("${CMAKE_CURRENT_BINARY_DIR}/KDChart/KDGantt" "${CMAKE_CURRENT_BINARY_DIR}/KDChart/kdgantt.h" COPYONLY)

在这里插入图片描述

保存后,直接右键INSTALL->生成


写文章截止时间是2025-07-30 22:00:00

最新解决方案请查看


5.测试

这最后有测试例子教程

在build/bin/Debug挑一个

使用 windeployqt.exe xxxx.exe 打包一下库

最新解决方案请查看


5.测试

这最后有测试例子教程

在build/bin/Debug挑一个

使用 windeployqt.exe xxxx.exe 打包一下库

在这里插入图片描述

http://www.xdnf.cn/news/16769.html

相关文章:

  • 实现了加载 正向 碰撞 雅可比 仿真
  • [SKE]UVM环境下OpenSSL加密算法参考模型设计
  • BOSMA博冠8K广播级讯道摄像机DC0300 EFP产品画册(下)
  • 利用SQL文件上传注入植入WebShell
  • 【从零实践Onvif】01、Onvif详细介绍(从Onvif客户端开发的角度认识Onvif、Web Servies、WSDL、SOAP)
  • SpringCloud -- MQ高级
  • 数学建模——01规划/整数规划
  • Vue3 Composition API
  • Oracle迁移PostgreSQL隐式类型转换配置指南
  • RHCA - CL260 | Day03:配置 RHCS 集群
  • PyTorch 生态四件套:从图片、视频到文本、语音的“开箱即用”实践笔记
  • Git LFS 安装和使用
  • 动态规划Day5学习心得
  • 原生C++实现信号与槽机制:原理详解
  • windows环境下MySQL 8.0 修改或重置密码
  • SpringBoot 实现 RAS+AES 自动接口解密
  • 图像处理控件Aspose.Imaging教程:使用 C# 编程将 CMX 转换为 PNG
  • 基于 Rust 和土木工程、设备故障诊断、混凝土养护、GPS追踪、供应链物流跟踪系统、地下水监测等领域的实例
  • Y型M12一分二连接器:高效稳定的数据传输解决方案
  • 涿州周边水系分布三维地图
  • MyBatis Plus Wrapper 详细分析与原理
  • 代码随想录day50图论1
  • [leetcode] 反转字符串中的单词
  • Cockpit管理服务器
  • 在 CentOS 系统上安装 Docker
  • 《超级秘密文件夹》密码遗忘?试用版/正式版找回教程(附界面操作步骤)
  • NAT技术与代理服务
  • web服务器nginx
  • sqLite 数据库 (3):以编程方式使用 sqLite,4 个函数,以及 sqLite 移植,合并编译
  • USB电源原理图学习笔记