##############################################################################
# CMake
############################################################################## cmake_minimum_required(VERSION 3.10)
project(test_project VERSION 0.1) set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON) ##############################################################################
# Catkin
############################################################################## find_package(catkin REQUIRED COMPONENTS
qt_build # qt_build provides the qt cmake glue
roscpp
sensor_msgs
cv_bridge
rosbag
camera_image_msgs
) include_directories(
include
${catkin_INCLUDE_DIRS}
) catkin_package(
CATKIN_DEPENDS qt_build roscpp sensor_msgs cv_bridge rosbag camera_image_msgs
) ##############################################################################
# Qt Environment
##############################################################################
set(CMAKE_AUTOUIC ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON) # set(CMAKE_PREFIX_PATH "/home/dengjh/Qt/5.15.2/gcc_64") set(ModuleList
Core
Gui
Widgets
Network
Concurrent
) foreach(QtModule ${ModuleList})
# set(Qt5${QtModule}_DIR ${CMAKE_PREFIX_PATH}/lib/cmake/Qt5${QtModule})
set(Qt5${QtModule}_DIR /home/dengjh/Qt/5.15.2/gcc_64/lib/cmake/Qt5${QtModule})
set(QT_LIBRARIES ${QT_LIBRARIES} Qt5::${QtModule})
endforeach() find_package(Qt5 REQUIRED ${ModuleList}) file(GLOB QT_FORMS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ui/*.ui)
file(GLOB QT_RESOURCES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} resources/*.qrc)
file(GLOB_RECURSE QT_MOC RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} FOLLOW_SYMLINKS ui/*.h include/*.hpp *.h) QT5_ADD_RESOURCES(QT_RESOURCES_CPP ${QT_RESOURCES})
QT5_WRAP_UI(QT_FORMS_HPP ${QT_FORMS})
QT5_WRAP_CPP(QT_MOC_HPP ${QT_MOC}) ##############################################################################
# Sources
############################################################################## file(GLOB_RECURSE QT_SOURCES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} FOLLOW_SYMLINKS ui/*.cpp src/*.cpp *.cc *.cxx ) ##############################################################################
# Binaries
############################################################################## add_executable(${PROJECT_NAME} ${QT_SOURCES} ${QT_RESOURCES_CPP} ${QT_FORMS_HPP} ${QT_MOC_HPP}) add_dependencies(${PROJECT_NAME}
${catkin_EXPORTED_TARGETS}
) target_link_libraries(${PROJECT_NAME} ${QT_LIBRARIES} ${catkin_LIBRARIES}) install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}) #############################################################################
# DEBUG or RELEASE
############################################################################# # 如果要生成debug版本
# SET(CMAKE_BUILD_TYPE "Debug")
# 如果要生成release版本
# SET(CMAKE_BUILD_TYPE "Release")
# 添加的支持debug和release支持
# SET(CMAKE_CXX_FLAGS_DEBUG "$ENV{CXXFLAGS} -O0 -Wall -g -ggdb")
# SET(CMAKE_CXX_FLAGS_RELEASE "$ENV{CXXFLAGS} -O3 -Wall")

Qt CMake官方教程:https://doc.qt.io/qt-5/cmake-get-started.html

ROS1 Qt5 CMake基本配置的更多相关文章

  1. windows下Qt5.1.0配置android环境搭建 good

    1.首先下载好需要配置的软件: 1>Qt 5.1.0 for Android (Windows 32-bit, 716 MB)(Info)下载地址: http://qt-project.org/ ...

  2. CMake交叉编译配置

    很多时候,我们在开发的时候是面对嵌入式平台,因此由于资源的限制需要用到相关的交叉编译.即在你host宿主机上要生成target目标机的程序.里面牵扯到相关头文件的切换和编译器的选择以及环境变量的改变等 ...

  3. cmake 查看配置选项

    cmake 查看配置选项可以用如下命令 cmake . -LH 查看help > cmake -h    cmake version 2.6-patch 4 Usage cmake [optio ...

  4. Android Studio 2.2以上支持了Cmake的配置JNI的相关参数

    Android Studio 2.2以上支持了Cmake的配置JNI的相关参数,简化了通过Android.mk配置.并很好的继承了C++的编辑方式.以下是对应的引入第三方so和第三方.cpp文件的路径 ...

  5. QT5.8+vs2015配置以及qt creater中出现中文乱码解决办法之一

    1.参考此文档:QT5.6+vs2015配置: 2.出现乱码问题时候 在头文件上加入: #pragma execution_character_set("utf-8") //加入这 ...

  6. Qt5.7.0配置选项(configure非常详细的参数)

    configure是一个命令行工具,用于配置Qt编译到指定平台.configure必须运行于Qt源码根目录.当运行configure时,编译源码使用的是所选工具链中的make工具. 一.源码目录.编译 ...

  7. vs2013+opencv2.4.11+Qt5.5.1配置

    注意本教程配置环境:win7 32位 如果只配置vs2013+opencv2.4.11,参考http://jingyan.baidu.com/article/ff411625b1311a12e4823 ...

  8. Win10 下Cmake编译配置 Opencv3.1 + Cuda7.5 + VS2013

    折腾了三天终于配置成功了,在此写下编译配置的全部步骤和遇到的很多坑. 整体介绍: OpenCV 中 CUDA 实现的函数还不是太多,使用前要在OpenCV的官网上确认以下你想要的功能是否已经实现,否则 ...

  9. cmake安装配置及入门指南

    前言 今天,从github下载代码学习,让我用cmake编译,纳尼?make我知道,cmake是啥鬼?天啊,无知很可怕!赶紧mark一波,虽然很耽误学习进度,但感觉还是要get一波! 一.安装准备 感 ...

  10. Heka 的 CMake 编译配置分析

    CMake 是一个跨平台的自动化建构系统,它使用一个名为 CMakeLists.txt 的文件来描述构建过程,可以产生标准的构建文件.   CMakeLists.txt 的语法比较简单,由命令.注释和 ...

随机推荐

  1. C语言读写txt文件

    写入和读取txt文件 #include<stdio.h> #include<string.h> int main( int argc, char *argv[] ) { int ...

  2. 【转载】SQL SERVER 中各种存储过程创建及执行方式

    一. 什么是存储过程系统存储过程是系统创建的存储过程,目的在于能够方便的从系统表中查询信息或完成与更新数据库表相关的管理任务或其他的系统管理任务.系统存储过程主要存储在master数据库中,以&quo ...

  3. ssm——spring整理

    目录 1.概述 2.Spring工厂与IOC 2.1.为什么要有Spring框架 2.2.什么是IOC 2.Spring工厂对实例注入 2.1.使用标签进行注入 2.2.使用注解进行注入 2.2.3. ...

  4. Redis哨兵集群搭建-Docker-Compose

    title: Redis哨兵集群搭建(Docker-Compose) date: 2022-09-27 17:00:56 tags: - Redis 代码地址:https://github.com/l ...

  5. ChatGPT/InstructGPT详解

    作者:京东零售 刘岩 前言 GPT系列是OpenAI的一系列预训练文章,GPT的全称是Generative Pre-Trained Transformer,顾名思义,GPT的目的就是通过Transfo ...

  6. Ubuntu 安装配置 Java 环境

    下载 Java 官网 https://www.oracle.com/java/technologies/downloads/ https://www.oracle.com/cn/java/techno ...

  7. C艹 里 printf 和 cout 的区别总结

    1. printf里面打出%需要连着打出两次 打出一次默认为格式标识符 打出两次: 2. 当 未完待续

  8. DevGridView表格导出自定义页脚

    在CustomSummaryCalculate 事件里 //强制初始化,如果列是动态通过数据源加载的,则绑定数据源后gridview想获取列的话,需要调用强制初始化的方法 view.GridContr ...

  9. 数据库系列:MySQL慢查询分析和性能优化

    1 背景 我们的业务服务随着功能规模扩大,用户量扩增,流量的不断的增长,经常会遇到一个问题,就是数据存储服务响应变慢. 导致数据库服务变慢的诱因很多,而RD最重要的工作之一就是找到问题并解决问题. 下 ...

  10. springcloud 08 Hystrix图形化DashBoard

    #1.构建一个服务监控模块 ##1.1创建模块cloud-consumer-hystrix-dashboard9001 ##1.2pom文件依赖 <dependencies> <!- ...