cmake qt 添加路径 项目_cmake 创建 QT项目_weixin_39977934的博客-程序员秘密

技术标签: cmake qt 添加路径 项目  

包含VTK、ITK

cmake_minimum_required(VERSION 3.3 FATAL_ERROR)

project(bnAiClient)

find_package(VTK REQUIRED)

include(${VTK_USE_FILE})

find_package(ITK REQUIRED)

include(${ITK_USE_FILE})

if("${VTK_QT_VERSION}" STREQUAL "")

message(FATAL_ERROR "VTK was not built with Qt")

endif()

# Set your files and resources here

set( Srcs cJSON.c loaddicomdlg.cpp main.cpp maincenterwidgets.cpp mainleftwidgets.cpp mainrightwidgets.cpp maintopwidgets.cpp mainwindow.cpp common/basestylewidget.cpp common/dicomlablewidget.cpp common/dicomvtkwidget.cpp common/httpapi.cpp common/imagelistitem.cpp common/networkapi.cpp common/shadowwidget.cpp common/staticbutton.cpp common/staticruler.cpp common/titlebutton.cpp common/waitingdlg.cpp )

set( Hdrs cJSON.h loaddicomdlg.h maincenterwidgets.h mainleftwidgets.h mainrightwidgets.h maintopwidgets.h mainwindow.h common/basestylewidget.h common/dicomlablewidget.h common/consts.h common/dicomvtkwidget.h common/httpapi.h common/imagelistitem.h common/networkapi.h common/shadowwidget.h common/staticbutton.h common/staticruler.h common/titlebutton.h common/waitingdlg.h )

set( MOC_Hdrs loaddicomdlg.h maincenterwidgets.h mainleftwidgets.h mainrightwidgets.h maintopwidgets.h mainwindow.h common/basestylewidget.h common/dicomlablewidget.h  common/dicomvtkwidget.h common/httpapi.h common/networkapi.h common/shadowwidget.h common/staticbutton.h common/staticruler.h common/titlebutton.h common/waitingdlg.h )

set( QRCs res.qrc )

include_directories(

${CMAKE_CURRENT_BINARY_DIR}

${CMAKE_CURRENT_SOURCE_DIR}

)

# Instruct CMake to run moc automatically when needed.

set(CMAKE_AUTOMOC ON)

if(VTK_QT_VERSION VERSION_GREATER "4")

find_package(Qt5 COMPONENTS Widgets REQUIRED QUIET)

qt5_add_resources(QRC_Srcs ${QRCs} )

source_group("Resources" FILES

${QRCs}

${EXE_ICON} # Not present

)

source_group("Generated" FILES

${MOC_Srcs}

${QRC_Srcs}

)

# CMAKE_AUTOMOC in ON so the MocHdrs will be automatically wrapped.

add_executable(bnAiClient ${Srcs} ${Hdrs}  ${MOC_Hdrs} ${QRC_Srcs})

qt5_use_modules(bnAiClient Core Gui Widgets Network)

target_link_libraries(bnAiClient ${VTK_LIBRARIES})

else()

find_package(Qt4 REQUIRED)

SET(QT_USE_QTNETWORK TRUE)

include(${QT_USE_FILE})

# Use what VTK built with

set(QT_QMAKE_EXECUTABLE ${VTK_QT_QMAKE_EXECUTABLE} CACHE FILEPATH "")

set(QT_MOC_EXECUTABLE ${VTK_QT_MOC_EXECUTABLE} CACHE FILEPATH "")

set(QT_UIC_EXECUTABLE ${VTK_QT_UIC_EXECUTABLE} CACHE FILEPATH "")

qt4_wrap_cpp(MOC_Srcs ${MOC_Hdrs} )

qt4_add_resources(QRC_Srcs ${QRCs})

source_group("Resources" FILES

${QRCs}

${EXE_ICON} # Not present

)

source_group("Generated" FILES

${QRC_Srcs}

${QRC_Srcs}

)

add_executable(bnAiClient  MACOSX_BUNDLE

${Srcs} ${Hdrs}  ${MOC_Hdrs} ${QRC_Srcs})

target_link_libraries(bnAiClient

${QT_LIBRARIES}

${VTK_LIBRARIES}

${ITK_LIBRARIES}

)

endif()

更多Qt 模块

SET(QT_USE_QTOPENGL TRUE)

其它较常用的模块包括:

QT_USE_QTNETWORK

QT_USE_QTOPENGL

QT_USE_QTSQL

QT_USE_QTXML

QT_USE_QTSVG

QT_USE_QTTEST

QT_USE_QTDBUS

QT_USE_QTSCRIPT

QT_USE_QTWEBKIT

QT_USE_QTXMLPATTERNS

QT_USE_PHONON

此外,还有其它的宏可以用,具体地可参见cmake/share/Modules/FindQt4.cmake

参考:https://www.cnblogs.com/findumars/p/5641859.html

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39977934/article/details/113380321

智能推荐

【Spark】Spark Streaming的程序运行原理及与Kafka的集成_魏晓蕾的博客-程序员秘密

Spark Streaming的介绍,运行WordCount实例,程序运行原理,与Kafka的集成及常用的API介绍。

Unity Jenkins打包设置 Windows_Yang-F的博客-程序员秘密

一.Jenkins安装,Jenkins 官网安装jenkins之前确定电脑是否配置好JDK,JDK安装自行谷歌Jenkins安装自行百度,可以参考此文章jenkins安装参考文档Jenkins安装完成后的相关配置可以根据自己需求进行配置,自行谷歌。注意事项:1.Jenkins安装时,在新手入门处,插件安装失败的,可自行到其他地方下载,自行上传。插件安装失败的参考文档 这里推荐一...

H5页面唤起关注公众号页面_公众号换起关注_qq_Girl200的博客-程序员秘密

一、H5页面唤起关注公众号页面上面已经说明如何判断用户是否已经关注公众号,那如何唤起关注页面,也就是如何跳转到关注页面引导用户关注呢,主要分为以下几个步骤:1、登录微信公众平台2、点击微信号头像右击查看源代码3、找到源代码中以下代码:将uin_base64这个参数值带入以下链接:https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=uin_base64&scene=110#wechat_redirect即可唤起关注公

有关Spring的面试题和答案集锦_fsdafd15616的博客-程序员秘密

69道Spring面试题和答案原文地址    译者:深海([email protected])  校对:方腾飞 目录Spring 概述依赖注入Spring beansSpring注解Spring数据访问Spring面向切面编程(AOP)Spring MVCSpring 概述1. 什么是spring? Spring 是个java企业级应用的...

Phaser 使用介绍_洋洋yang羊的博客-程序员秘密

本文将介绍 java.util.concurrent.Phaser,一个常常被大家忽略的并发工具。它和 CyclicBarrier 以及 CountDownLatch 很像,但是使用上更加的灵活,本文会进行一些对比介绍。和之前的文章不同,本文不写源码分析了,就只是从各个角度介绍下它是怎么用的。本文比较简单,我觉得对于初学者大概需要 20 分钟左右吧。其实我对这个需要多少时间很没概念,有没有读者愿意记录下所花费的时间,在评论区反馈一下。使用示例我们来实现一个小需求,启动 10 个线程执行任务,由于

一步一步,开始上手Mac 开发(一)_mac开发教程_班公湖里洗过脚的博客-程序员秘密

https://www.jianshu.com/p/feadeb1ae7ae  周末闲暇,在网上看到一篇Mac开发教程How to Make a Simple Mac App on OS X 10.7 Tutorial: Part 1/3,鉴于Mac开发资料较少,翻译整理,也算是自己练习的一个过程记录。学习目标:通过本文,你可以创建你的第一个Mac Application,...

随便推点

如何设计一个通用的权限管理系统_程序员小乐的博客-程序员秘密

点击上方 "后端架构师"关注,星标或置顶一起成长后台回复“大礼包”有惊喜礼包!关注订阅号「后端架构师」,收看更多精彩内容每日英文Nothing can't be...

python在一段字符串中找含有的子串个数_klaus007的博客-程序员秘密

# -*- coding:'utf-8' -*-A = input("请输入长字符串:")B = input("请输入子字符串:")p = A.count(B)print(p)def str_count(a,b): ''' 计算子字符串个数 ''' length_a = len(a) length_b = len(b) count = 0 i = 0 for ...

编写区块链游戏学智能合约 教程2:僵尸攻击人类_狼_夏天的博客-程序员秘密

该教程来自 CryptoZombies 网址:https://cryptozombies.io/zh/course/ CryptoZombies 是个在编游戏的过程中学习 Solidity 智能协议语言的互动教程。编游戏的同时学习以太坊的智能协议。关键是它免费。本课会使用到一些高级的 Solidity 概念.1. 映射(Mapping)和地址(Address)我们通过给数据库中的...

select * from( select * from 表名) 是什么意思_select from_Java&Develop的博客-程序员秘密

select * from( select * from 表名) 是什么意思1.括号内的结果集对于外面叫做派生表 这种查询一般是要对括号内的查询结果集再进行筛选及操作2.select * from( select * from 表名)简单,看似无用,一般里面写的都很复杂,多表联合、分组等等3.哪里有分组,order by是排序,case when 是选择语句,可以根据选择条件筛选取值总结:select * from( select * from 表名) 里面的select * from 表名 工作

a1465苹果笔记本_苹果笔记本开机“文件夹图标里有个问号”,大神一根线完美修复..._weixin_39858132的博客-程序员秘密

同行一台苹果A1465笔记本电脑,开机“咚”的一声,屏幕白屏,然后出现一个文件夹图标里面有个问号。同行拆机检测过,硬盘也换过,主板没进水,但找不到哪里问题,于是留机检测维修。拿到机器后,拆机,首先检查主板,连主板的进水标都是白色,没有进水的痕迹。维修过程:第一步:首先检查硬盘工作条件是否满足,正常。打开图纸,找到硬盘接口J3700的供电12345脚位,测量了3.3V正常,供电正常。第二步:检查时钟...

触动精灵_cqh520llr的博客-程序员秘密

[code="java"]touchDown(1, 350, 550);mSleep(30);touchMove(1, 350, 1500);mSleep(30);touchUp(1, 350, 1500);touchDown(1, 150, 550);for i = 0, 200, 10 do touchMove(1, 150 + i, 550);mSle...