[项目配置] 配置Qt函数库和ui界面库的封装并调用的项目(二)

简介: [项目配置] 配置Qt函数库和ui界面库的封装并调用的项目

[项目配置] 配置Qt函数库和ui界面库的封装并调用的项目(一)+https://developer.aliyun.com/article/1394490

  1. C++ — 预处理器 — 预处理器定义:配置同上函数库“VisionLibrary”。
  2. 链接器—常规—输出文件$(OutDir)$(ProjectName)D.dll
    链接器—常规—附加库目录:相比配置函数库“VisionLibrary”而言,增加了对函数库的库目录配置(最后一项)
    $(QTDIR)\lib
    $(HALCONROOT)\lib\x64-win64
    $(SolutionDir)Export\vision\lib
  3. 链接器—常规—输入:相比配置函数库“VisionLibrary”而言,增加了对函数库的.lib配置(最后一项)
    qtmaind.lib
    Qt5Cored.lib
    Qt5Guid.lib
    Qt5Sqld.lib
    Qt5Widgetsd.lib
    halconcpp.lib
    VisionLibraryD.lib
  4. 生成事件—后期生成事件:和配置“VisionLibrary”库一样,只是文件夹名称不一样,最后输出:

命令行输入如下:

rd /S /Q "$(SolutionDir)Export\visionUi\include"
md "$(SolutionDir)Export\visionUi\include"
rd /S /Q "$(SolutionDir)Export\visionUi\lib"
md "$(SolutionDir)Export\visionUi\lib"
rd /S /Q "$(SolutionDir)Export\visionUi\bin"
md "$(SolutionDir)Export\visionUi\bin"
xcopy /Y /S "$(ProjectDir)include\*"   "$(SolutionDir)Export\visionUi\include\"
xcopy /Y /S "$(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)D.lib"  "$(SolutionDir)Export\visionUi\lib\"
xcopy /Y /S "$(SolutionDir)$(Platform)\$(Configuration)\$(ProjectName)D.dll"  "$(SolutionDir)Export\visionUi\bin\"

🚓上位机测试项目“VisionTestFrame”的添加与配置

  1. 项目的添加:右键解决方案——添加新项目——VisionTestFrame(项目名)——VisionTestFrame(类名)——QMainWindow(基类)
  2. 常规配置如下:
  3. 项目调试—环境配置同上函数库“VisionLibrary”。
  4. 项目C++ — 常规 — 附加包含目录相比配置函数库“VisionLibrary”而言,增加了对函数库的包含路径(后两项)。
    .\GeneratedFiles$(ConfigurationName)
    .\GeneratedFiles
    .
    $(QTDIR)\include
    $(QTDIR)\include\QtCore
    $(QTDIR)\include\QtGui
    $(QTDIR)\include\QtANGLE
    $(QTDIR)\include\QtWidgets
    $(HALCONROOT)\include\halconcpp
    $(HALCONROOT)\include
    $(SolutionDir)VisionLibrary
    $(SolutionDir)VIsionUILibrary
    $(SolutionDir)Export\vision\include
    $(SolutionDir)Export\visionUi\include
  5. C++ — 预处理器 — 预处理器定义
    QT_QML_DEBUG
    QT_CORE_LIB
    QT_GUI_LIB
    QT_WIDGETS_LIB
    UNICODE
    _UNICODE
    WIN32
    _ENABLE_EXTENDED_ALIGNED_STORAGE
    WIN64
  6. 链接器—常规—附加库目录
    $(QTDIR)\lib
    $(HALCONROOT)\lib\x64-win64
    $(SolutionDir)Export\vision\lib
    $(SolutionDir)Export\visionUi\lib
  7. 链接器—输入—附加依赖项
    qtmaind.lib
    Qt5Cored.lib
    Qt5Guid.lib
    Qt5Widgetsd.lib
    halconcpp.lib
    VisionLibraryD.lib
    VisionUILibraryD.lib

🚒总结

至此,Debug平台下函数库、界面库和测试项的添加与配置已经完成,三者的依赖关系和生成顺序如下:

将测试项“VisionTestFrame”设为启动项目

🚛配置中遇到的问题

  1. 配置结束后,编译界面库VisionUILibrary是出现VisionLibrary.cpp(4): warning C4273: “VisionLibrary::VisionLibrary”: dll 链接不一致的问题
    解决:因为我复制的别的项目导出库头文件是这样的

    而我的项目导出库头文件是下面这样的

    所以需要在界面库VisionUILibrary项目中C++ — 预处理器 — 预处理器定义VISIONLIBRARY_EXPORTS更改为VISIONUILIBRARY_LIB,前面已经更改,大家按照前面的配置是对的,只是我自己刚开始不太理解预处理器定义,完全照搬的别的项目,导致出现问题。

🚑Release平台配置与Debug平台配置的一些差别

   以VisionLibrary函数库的配置为例,界面库和上位机项目配置大同小异

  1. 常规
  2. 预处理器定义
  3. 链接器—常规
  4. 命令行

戳戳小手帮忙点个免费的赞和关注吧,嘿嘿。

目录
相关文章
|
3月前
|
计算机视觉 Python
基于Dlib的人脸识别客户端(UI界面)
基于Dlib的人脸识别客户端(UI界面)
92 2
|
25天前
|
移动开发 前端开发 Java
Java最新图形化界面开发技术——JavaFx教程(含UI控件用法介绍、属性绑定、事件监听、FXML)
JavaFX是Java的下一代图形用户界面工具包。JavaFX是一组图形和媒体API,我们可以用它们来创建和部署富客户端应用程序。 JavaFX允许开发人员快速构建丰富的跨平台应用程序,允许开发人员在单个编程接口中组合图形,动画和UI控件。本文详细介绍了JavaFx的常见用法,相信读完本教程你一定有所收获!
Java最新图形化界面开发技术——JavaFx教程(含UI控件用法介绍、属性绑定、事件监听、FXML)
|
3月前
(7)Qt中的自定义槽(函数)
这篇文章介绍了在Qt中如何定义和使用自定义槽函数,包括类成员函数、静态类成员函数、全局函数和lambda表达式作为槽函数的示例,以及使用lambda表达式时的注意事项。
100 2
|
2月前
|
开发框架 JavaScript 前端开发
HarmonyOS UI开发:掌握ArkUI(包括Java UI和JS UI)进行界面开发
【10月更文挑战第22天】随着科技发展,操作系统呈现多元化趋势。华为推出的HarmonyOS以其全场景、多设备特性备受关注。本文介绍HarmonyOS的UI开发框架ArkUI,探讨Java UI和JS UI两种开发方式。Java UI适合复杂界面开发,性能较高;JS UI适合快速开发简单界面,跨平台性好。掌握ArkUI可高效打造符合用户需求的界面。
160 8
|
5月前
|
编解码 前端开发 vr&ar
从零开始的PICO教程(4)--- UI界面绘制与响应事件
这篇文章是PICO开发系列教程的第四部分,主要介绍了如何在PICO 4 VR环境中创建UI界面,包括Canvas和Panel的配置、UI元素的绘制、以及Button和Slider的事件响应绑定,并通过示例展示了数字增减和滑块功能的具体实现。
从零开始的PICO教程(4)--- UI界面绘制与响应事件
|
3月前
|
机器学习/深度学习 数据可视化 计算机视觉
基于opencv的车牌识别系统(UI界面采用tkinter设计)
基于opencv的车牌识别系统(UI界面采用tkinter设计)
79 0
|
4月前
|
XML Android开发 UED
💥Android UI设计新风尚!掌握Material Design精髓,让你的界面颜值爆表!🎨
随着移动应用市场的蓬勃发展,用户对界面设计的要求日益提高。为此,掌握由Google推出的Material Design设计语言成为提升应用颜值和用户体验的关键。本文将带你深入了解Material Design的核心原则,如真实感、统一性和创新性,并通过丰富的组件库及示例代码,助你轻松打造美观且一致的应用界面。无论是色彩搭配还是动画效果,Material Design都能为你的Android应用增添无限魅力。
109 1
|
5月前
qt 手搓ui
qt 手搓ui
54 3
|
5月前
|
API Android开发
Android项目架构设计问题之选择和使用合适的UI库如何解决
Android项目架构设计问题之选择和使用合适的UI库如何解决
62 0
|
5月前
|
开发者 Android开发 UED
打造流畅应用:深入探索如何在Xamarin项目中选择并实现最佳UI/UX设计的实践指南
【8月更文挑战第31天】在数字化时代,UI/UX设计成为应用成功的关键。Xamarin以高效开发和强大兼容性著称,其设计理念“一次编写,处处运行”需充分适应多平台特性,提供一致体验。选择Xamarin.Forms或结合Xamarin.Native可实现跨平台UI设计;遵循各平台设计指南,保持布局一致性和简洁性;通过用户测试不断优化。最终,结合技术和用户需求,打造美观实用的应用,脱颖而出。
65 0