技术标签: 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
1、开发背景随着高校学生规模不断的扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长。面对庞大的信息量,需要相应的管理系统来提高学生管理工作的效率,做到信息的规范管理、科学统计和快速查询,以减少管理方面的工作量。本课题拟开发适合学院实际的高校学生信息管理系统。2、功能描述根据需求分析,本管理系统的设计及功能描述如下:(1)汽车管理:(2)学员管理:(3)职工管理:(4)缴费管理:(5)学员学习...
ERP研究产生了大量的时空数据集。这些丰富的数据集是帮助我们理解认知和神经过程的关键。然而,它们也存在大量的多重比较问题,可能导致大量具有假阳性效应(effect)的研究(高I型错误率)。ERP统计分析的标准方法是对时间窗和感兴趣区域的平均,但这并不总是能控制第一类错误,它们的不灵活性可能导致检测真实效应的效力(统计效力,power,以下全部成为效力)较低。单变量方法提供了另一种分析方法。然而,迄今为止,它们被认为主要适用于探索性统计分析,只适用于简单的设计。在这里,我们提出了新的模拟研究,表明基于置换(p
apue全称指的是Advanced Programming in the UNIX Environment,即由超级大神W.Richard Stevens 写的unix环境高级编程。这本书可以算的上是unix环境编程的圣经,小弟不才,将一些学习经验分享,大家就仁者见仁智者见智吧。由于书中的示例包含的文件很多,而版面有限,那么就来看看作者自己编写的头文件吧。这个头文件主要包含了经常要用到的头文件
1、确保已在机器上安装Net Core Runtime,,下载地址: https://dotnet.microsoft.com/download2、点击WebApi项目右键->发布,选择IIS为发布目标,点击发布;3、选择文件系统,指定发布路径选择release配置,框架对应项目使用框架,然后保存确定4打开IIS服务器,添加网站,物理路径选择...
××项目一共有3个人开发,一期已经完成了,另外两个人去负责其它项目了,老大让我继续负责这个项目,休bug和二期的需求实现。 今天下午需求是要去给客户演示项目的,but,还有个bug没有改,oh my god. 心里急啊。 导出Excel表格没有问题,全部导出可以打开,但条件过滤后怎么也打不开,显示: 后台也没有报错,debug调试几遍也没问题。这代码是同事写的,我只...
Keil5中代码对齐快捷操作
1.在原来的窗体中直接跳转用onClick="window.location.href='你所要跳转的页面';"2、在新窗体中打开页面用:onclick="window.open('你所要跳转的页面')"3、返回上一页 ( 本地测试无效,服务器上可用)window.history.back(-1);JavaScript:history.back(1)
大数据文摘出品作者:刘俊寰、朱科锦、lin昨天,翘首期待的iPhone12终于面世,不管是回归经典方框设计,还是首次推出小屏mini版,都让苹果玩家大呼过瘾。不过,在今年这场别开生面的发布会之前,以安全著称的苹果却忽然被曝出55个漏洞。想要剁手的朋友们尽管放宽心,因为这些漏洞已经被5名黑客报给了苹果,还因此小赚一笔,获得了5万美金的奖励。事情是这样的,苹果一直有对漏洞报告者进行资金奖励的传统,并且给这个项目取了个酷炫的名字——Apple Bug赏金计划。今年7...
代码package com.zhonghong.mission.hbasetoesimport java.text.SimpleDateFormatimport java.util.Dateimport com.alibaba.fastjson.JSONObjectimport org.apache.commons.lang.StringUtilsimport org.apache.hadoop.conf.Configurationimport org.apache.hadoop.hbas
用过Jenkins的都知道,在Build配置那里有1个Add buld step, 有这样两个选项:1. Execute Windows batch command2. Execute shell第1个是履行windows命令,第2个是履行shell脚本。开始我以为不管jenkins安装在windows下还是linux下都可以履行windows命令和linux命令,但是后来我发...
Kafka 如何做到支持百万级 TPS ?先用一张思维导图直接告诉你答案:顺序读写磁盘生产者写入数据和消费者读取数据都是顺序读写的,先来一张图直观感受一下顺序读写和随机读写的速度:从图中可以看出传统硬盘或者SSD的顺序读写甚至超过了内存的随机读写,当然与内存的顺序读写对比差距还是很大。所以Kafka选择顺序读写磁盘也不足为奇了。下面以传统机械磁盘为例详细介绍一下什么是顺序读写和随机读写。盘片和盘面:一块硬盘一般有多块盘片,盘片分为上下两面,其中有效面称为盘面,一般上下都有效,也就是说:盘面
Altium Designer 18 速成实战 第四部分 PCB库的设计(二)2D标准封装创建目录一、新建PCB元件库:二、向导法创建封装:1、向导法创建DIP40(89C51):2、PCB封装的组成元素:1脚标示、阻焊、PCB焊盘、管脚序号、丝印。三、手工法创建封装:1、新建器件的PCB封装:2、放置焊盘:3、修改焊盘属性:4、特殊粘贴:5、绘制丝印层...