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

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.dtcms.com/a/306152.html

相关文章:

  • IFCVF驱动+vhost-vfio提高虚拟机网络性能
  • BWCTAKC11X64G佰维/BIWIN存储容量为64GB
  • Java内存模型(JMM)
  • 制作一款打飞机游戏84:游戏视觉优化
  • 创建型设计模式-单例模式
  • Django模型关系:从一对多到多对多全解析
  • JSON.parse解析大整数踩坑
  • 9.项目起步(3)
  • ETCD学习之路
  • 代码随想录算法训练营第三十六天
  • 微软 Power Platform 使用Power Automate自动添加用户到AD域环境并分配环境角色
  • 「源力觉醒 创作者计划」_文心大模型 4.5 开源 28 天:从车间轴承到山村课堂的 AI 突围
  • 硬件电路设计(基本元器件)
  • 微信小程序苹果手机和安卓,怎么做适配
  • 链游与传统游戏的区别
  • 2025年自动化工程与计算机网络国际会议(ICAECN 2025)
  • TypeScript:前端语言,后端哲学
  • 桶排序-Java实现
  • 关于Docker【常见问题解决方案】
  • 数学建模——01规划/整数规划
  • sql developer 中文显示问号 中文显示乱码 错误消息显示问号
  • Shopify Draggable + Vue 3 完整指南:打造现代化拖拽交互体验
  • 小程序端基于 AI 的语音交互功能深度开发
  • Spring AI 海运管理应用
  • Webstorm 和 Intellij Idea 最新版 Git 本地修改丢失,手工开启 git 的 Local Changes
  • APM32芯得 EP.27 | 告别IDE,为APM32F411打造轻量级命令行开发工作流
  • socket网络编程(1)
  • 基于 Hadoop 生态圈的数据仓库实践 —— OLAP 与数据可视化(五)
  • C语言数据结构(1)顺序表专题2.顺序表的应用
  • YOLO融合MogaNet中的ChannelAggregationFFN模块