cmake下cmake_c_flags,add_definitions】的更多相关文章

cmake_c_flags用来设置编译选项 如 -g -wall(不展示警告) add_definitions 添加编译参数,比如add_definitions(-DDEBUG)将在gcc命令行添加DEBUG宏定义 ADD_LIBRARY (hello SHARED ${LIBHELLO_SRC}) # 添加静态库,关键词为static, # ADD_LIBRARY (hello STATIC ${LIBHELLO_SRC}) # 仍然用hello作为target名时,是不能成功创建所需的静态库…
编译安卓NDK库时,发现在R15的NDK编译出来的库,总是带了-g选项,导致附带调试,文件过大. 搜索一番后,结论是NDK的文件中有问题: https://github.com/android/ndk/issues/243 R15版本的android.toolchain.cmake中,并未区分Release与RelWithDebInfo两种情况,直接附带-g选项 这种情况下,如果修改android.toolchain.cmake当然是大动干戈了,想想办法,CMake中的String派上用场了 在…
准备工作 下载代码LoRaMac-node  阅读LoRaMac-node目录下的doc文件夹中的development-environment.md 开工 安装所需环境 CMaka( >= 3.6), ​ sudo apt install CMake 若ubuntu版本为16.04及以下,请参照development-environment.md中提示进行安装高版本的CMake GNU ARM-Toolchain Step1: Inside Ubuntu, open a terminal an…
我们有些时候会在#if   #ifndef   等预编译命令里面看到_WIN32等定义的宏.但是有些宏定义,你即使通过Visual Studio右键的go to definitions 和go to decleration就是找不到宏定义的位置,其实是在vcproject,.sln工程文件的项目属性里面就定义好了.因为在VS中时GUI界面的操作,所以容易找出来,但是Cmake下,换了一种创建工程文件的思维方式.初学者就会被迷惑了. 下图就是VS中设置预处理器定义的界面: 在Cmake脚本中就用a…
概述 CMake是一个比make更高级的编译配置工具,它可以根据不同平台.不同的编译器,生成相应的Makefile或者vcproj项目. 通过编写CMakeLists.txt,可以控制生成的Makefile,从而控制编译过程.CMake自动生成的Makefile不仅可以通过make命令构建项目生成目标文件,还支持安装(make install).测试安装的程序是否能正确执行(make test,或者ctest).生成当前平台的安装包(make package).生成源码包(make packag…
注:1. 对某些地方进行了更新(红色标注),以方便进行配置. 2. ZED ROS Wrapper官方github已经更新,根据描述新的Wrapper可能已经不适用与Ros Indigo了,如果大家想参照这份博客进行安装ZED ROS Wrapper,有可能会出现其他问题.ZED ROS Wrapper github地址:https://github.com/stereolabs/zed-ros-wrapper 最近想运用ZED相机在ROS系统上实时运行ORB-SLAM2,在环境配置的过程当中遇…
公司引擎是用cmake根据目标平台来构建工程的,刚接触的时候深深体会到cmake的方便:如果目标平台是windows,它可以帮你自动构建出vs工程:如果是安卓,自动构建出eclipse工程,如果是IOS,自动构建出xcode工程.想想以前用vs建工程的时候,如果要引入第三方库,必须要手动配置第三方库路径,如果引入的库少,那还没什么,如果多的话就悲剧了,配个环境都要半天.再想想以前在linux平台下手动写Makefile的时候,如果工程比较小,模块少还好办,如果工程大,模块多,各种写依赖关系都要让…
1.准备工作 我所用的开发环境是win10下的qt5.11.2配置了vs2017的编译器,根据自己所用的VS的版本去官网下载对应版本的pcl库,如下 PCL-1.8.1-AllInOne-msvc2017-win64.exe pcl-1.8.1-pdb-msvc2017-win64.zip 另外还需要下载对应版本的vtk依赖库 vtk-v8.0.0.zip 注:上面的PCL-1.8.1-AllInOne-msvc2017-win64.exe,安装后,pcl库以及它的第三方依赖库(boost .E…
1.下载源代码,解压到POCO-1.7.8-ALL 2.从$ANDROID_NDK\cmake下复制android.toolchain.cmake AndroidNdkGdb.cmake AndroidNdkModules.cmake至POCO-1.7.8-ALL\cmake\下 3.vim POCO-1.7.8-ALL\cmake\android.cmake,内容如下 #cd POCO-1.7.8-ALL #mkdir BUILD && cd BUILD #cmake -DCMAKE_C…
在开始介绍如何使用CMake编译跨平台的静态库之前,先讲讲我在没有使用CMake之前所趟过的坑.因为很多开源的程序,比如png,都是自带编译脚本的.我们可以使用下列脚本来进行编译:   . / configure    -- prefix = / xxx / xx -- enable - static = YES make make install 相信手动在类Unix系统上面编译过开源程序的同学对上面的命令肯定非常熟悉.但是,如果不配置编译器和一些编译.链接参数,这样的操作,最后编译出来的静态…
背景: 最近,在Nvidia的GPU嵌入式开发板Jetson TX1(简称TX1)上移植深度学习目标检测算法YOLO.在TX1上安装了官方提供的opencv版本——OpenCV4Tegra(OpenCV-2.4.12),但是使用该版本opencv VideoCapture在读取摄像头数据时出错,显示错误: Unable to stop the stream.: Device or resource busy Unable to stop the stream.: Bad file descrip…
1 cmake policy是什么? cmake policy可以理解为cmake的语法标准,也就是说,它规定了cmake在解析CMakeLists.txt文件时的行为. 2 cmake policy的用途是什么? cmake在进化的过程中,需要关心两件事情,一是对以前的版本兼容,这样的话,以前的开发者写的CMakeLists.txt在新版本的cmake下仍然可以使用.一是,要对老版本的bugs进行修复.但是,往往二者难以兼容,怎么办呢?那么就使用policy了.就算是新的cmake,但是只要指…
CRTMPServer 在CentOS 64-bit下的编译 http://blog.csdn.net/qiuchangyong/article/details/52848942 ========================================== 一.Centos 用 wget 下载需要的软件 wget http://www.cmake.org/files/v2.8/cmake-2.8.6.tar.gz 二.安装 cmake tar zxvf cmake-2.8.4.tar.g…
最近在学习各大物联网平台的SDK包,发现其工程都使用了一种叫cmake的工具在管理代码.于是花了一天时间简单学习了解了cmake工具,其目的是让自己能读懂使用该工具管理的代码,并能简单使用该工具管理我自己的工程代码.CMAKE与Makefile类似,是一种代码编译工具,cmake解决了Makefile跨平台编译难的问题,其语法规则比较简单且易于上手,下面是作者初学cmake的笔记 一.CMAKE下载 cmake下载路径可以选择下面两个,具体的软件版本请根据不同环境下载 作者的笔记是在linux6…
原文转载自:Ricky.K http://www.cnblogs.com/rickyk/p/3877238.html 个人一直有一个想法,就是想出一系列关于CMakeLists.txt国外经典例子的实战解读.因为国内关于CMake的介绍和用法少之又少,再加上CMake本身对于实践能力的要求也比较高,过于理论化的学习只会让读者停留在Hello World和超级项目之间(其实就是理论知识要么简单很容易,单个cpp或者单个lib,或者例子复杂的要死,直接带动整个超大过程类似KDE这种),所以,我觉得我…
缘起因由 在一个无所事事的周末下午,突然想起魔兽世界,官方的账号很久没有上了,里面的大小号现在连满级都不是.以前曾经搭过传奇和星际争霸战网的私服自娱自乐,也听说过魔兽世界有开源的服务端模拟,既然兴致来了就小小的研究一下. 目前魔兽世界的私服比较流行的是MaNGOS和Trinity,二者都是模拟魔兽世界服务端.MaNGOS“号称”是一个研究型项目,目的是为了学习大规模的C++项目开发,有道理,不过我不信.Trinity是基于MaNGOS的代码开发的,以前主要是为了合并用户提交的补丁代码而设立的一个…
crtmpserver流媒体服务器的介绍与搭建 (2012-02-29 11:28) 标签:  crtmpserver  C++ RTMP Server  rtmp  Adobe FMS(Flash Med  流媒体服务器  分类: crtmpserver 前言       Adobe的FMS(Flash Media Server)是很好用.但对应着分级授权的是money和有限功能开放.商业的东西既然用不起,也阻碍了我们的技术进步,那就只能求助于开源社区了.而crtmpserver就是FMS的替…
前言       Adobe的FMS(Flash Media Server)是很好用.但对应着分级授权的是money和有限功能开放.商业的东西既然用不起,也阻碍了我们的技术进步,那就只能求助于开源社区了.而crtmpserver就是FMS的替代者之一   1. crtmpserver简介     crtmpserver的功能总来说: 支持推送给它的rtmp流的接收与播放器请求的分发: rtmp流媒体服务器树状网络集群的构建: 支持iPhone,Android. 下面是官网首页的功能与应用介绍(h…
一.准备工作: 1下载Qt5.10.0 和 Qt Creator 4.5.0软件(http://download.qt.io/official_releases/qt/) 2.下载opencv3.40 (https://opencv.org/releases.html) 3.下载Cmake3.10.1 (https://cmake.org/download/) 二.软件安装 1.qt软件安装与配置 ①安装Qt5.10.0,我的安装路径:D:\Qt 注意点:在弹出的"选择组件窗口"中,选…
一.准备工作: 1下载Qt5.7.1软件qt-opensource-windows-x86-mingw530-5.7.1.exe(http://download.qt.io/official_releases/qt/5.7/5.7.1/) 2.下载opencv3.1 OpenCV for Windows(http://opencv.org/downloads.html) 3.下载Cmake3.7.2 cmake-3.7.2-win64-x64.msi(https://cmake.org/down…
1.软件包准备 opencv源码包地址:                官网  github opencv_contrib源码包地址:   github Tesseract源码包地址:            github cmake.exe 下载地址:             官网 注意: opencv和open_contrib包的版本号要一致(比如都是3.4.0) Tesseract源码安装参考: win10 vs2015源码编译tesseract4.0 2. 使用cmake生成解决方案 分别…
1. 官网下载 llvm 2. 官网下载cmake 3. configure 执行 llvm 发现报错 4. 解压缩 cmake 5.将cmake 下面的bin 目录放到环境变量里面去 6. 创建一个 /llvm 类似的目录 7. 解压缩 llvm的安装包 并且pwd 相应的目录 例如为 /path 8. cd 到 /llvm 的目录执行命令 cmake /path 9. 执行成功之后执行命令 cmake --build . 注意在当前目录 10. 执行最后一个安装命令 cmake --buil…
opencv版本的问题(由于我安装了两个版本opencv-2.4.9 and opencv-3.1.0),搜了相关问题,可以通过修改了CMakeList.txt解决此问题. 参考了这个博客:http://www.cnblogs.com/xzd1575/p/5555523.html CMake下指定Opencv版本 关键文件:OpenCVConfig.cmake.在opencv编译好后,所在目录中一般会有一个叫OpenCVConfig.cmake的文件,这个文件中指定了CMake要去哪里找Open…
详细Ubuntu18.04,CUDA9.0,OpenCV3.1,Tensorflow完全配置指南 问题1:使用Cmake编译opencv源码 CMake Error: The following variables are used in this project, but they are set to NOTFOUND. Please set them or make sure they are set and tested correctly in the CMake files: CUD…
KMS使用CLion作为IDE来调试,打开kms相应模块的目录,CLion自动识别相应的CMakeLists.txt. 然而会make失败,经搜索,看到Clion使用的自带的cmake,因此系统中安装的模块,都是不支持的 直接将/usr/local/clion-2018.3.1/bin/cmake下的linux目录改名备份 然后链接/usr为linux,就可以编译通过了.…
前言 Point Cloud Library (PCL)是一个功能强大的开源C++库,假设可以使用好PCL将会对我们在LiDAR数据处理领域的研究产生巨大帮助.LiDAR技术经过几十年的发展.眼下国内外关于LiDAR点云数据处理的文献已非常丰富.可是依旧存在硬件上的发展速度大于软件的发展速度. PCL中的算法基于众多的科研人员和程序爱好者的无私贡献才有今天强大的PCL. 博文中,我将针对怎样结合PCL和Qt库做一个可视化点云的程序.这部分内容在PCL官网已有几个样例并且都可以非常好的使用,并且U…
libLAS 是一个用来读写三维激光雷达数据(LiDAR) 的 C++ 库.在学习.科研和研发中都会广泛运用.怎样编译和配置自己所须要版本号的libLAS库确是一件麻烦耗时的事情. 笔者在Win7 64位系统.CMake3.0.2和VS2013编译libLAS库,在编译过程中走了一些弯路和遇到了不好问题,终于一一解决.现以博客的形式记录下来.供相关研究的同仁学习交流. 官方给的编译和安装教程中都用到了 OSGeo4W .但由于在OSGeo4W下载各个所需库非常慢,笔者将所需的各个库都在CMake…
前言 昨天试了一下新版本,发现完全按照官网安装会提示一些问题,所以留下记录. PS,我选择从源码安装Autoware 1.12 配置列表: 系统:Ubuntu 18.04 ROS:Melodic CUDA:10.0以上 Eigen:3.3.7以上 1. 显卡驱动.CUDA安装 这里请参考:https://www.cnblogs.com/hgl0417/p/10643760.html的显卡驱动安装. 已经将我的显卡驱动以及CUDA上传到网盘:链接: https://pan.baidu.com/s/…
Clion进行远程调试 在大三下半学期学习Linux高级编程时,老师布置的作业要在linux机器上进行,当时完成的十分艰苦,调试难受的一匹,当时就萌生了这个想法,因为Jetbrains官方文档的晦涩(英语差)不了了之.后来在多方群友的指导下,参悟此法,立地成佛.写下此博客.另:本文采用的是树莓派环境,因为上一篇文章配置的树莓派上的Qt,因此本文也采用树莓派,ubuntu上也是同样的的,毕竟都是Linux环境吗. CLion配置远程环境. 正常情况下,右边边栏会有RemoteHost按钮,没有可以…
C++ 基础教程Beta 版 原作:Juan Soulié 翻译:Jing Xu (aqua) 英文原版 本教程根据Juan Soulie的英文版C++教程翻译并改编. 本版为最新校对版,尚未定稿.如有不明或错误之处,请参考英文原版,并敬请在本站留言指正.版权归作者所有,欢迎链接,请勿转载. 本教程对C++语言进行了深入浅出的介绍,从基础知识到ANSI-C++标准的最新功能,内容涵盖了从数组,类等基本概念到多态.模板等高级概念.教程本着实用的原则,每一小节都结合了可以工作的程序实例,以便读者从第…