学习/cmake-cookbook/chapter-01/recipe-07/example

news2024/11/25 20:23:28

代码链接:cmake-cookbook/chapter-01/recipe-07/example at master · dev-cafe/cmake-cookbook · GitHub

BUG 是告诉如G++之类的编译器在每个translation unit中定义macro NDEBUG,进而导致所有assert()都被关闭!合法取值是Debug,Release,RelWithDebInfo,MinSizeRel;,其中CONFIG就是上述构建类型名称的大写,因为我自定义了Debugs,所以编译参数集就是CMAKE_C_FLAG_DEBUGS)但是我随便设置了一个非法值,也没有报错,但是对应的编译参数集应该是空的,打印如下:(注意编译参数集的命名规则是。2、如何设置构建类型。 

1、构建类型:

        合法取值是Debug,Release,RelWithDebInfo,MinSizeRel;另外可以自定义,但是要设置对应的编译参数集。

        详细参见Default And Custom Configurations

        但是我随便设置了一个非法值,也没有报错,但是对应的编译参数集应该是空的,打印如下:(注意编译参数集的命名规则是CMAKE_<LANG>_FLAGS_<CONFIG> ,其中CONFIG就是上述构建类型名称的大写,因为我自定义了Debugs,所以编译参数集就是CMAKE_C_FLAG_DEBUGS)

        

2、如何设置构建类型

        

set(CMAKE_BUILD_TYPE Release CACHE STRING "Build type" FORCE)

        详细参见CMAKE_BUILD_TYPE

3、编译参数集中的-DNDEBUG是什么意思?

        注意:CMake2.8中默认是有-DNDEBUG的

        -DNDEBUG 是告诉如G++之类的编译器在每个translation unit中定义macro NDEBUG,进而导致所有assert()都被关闭! (转自注意:CMake2.8中默认是有-DNDEBUG的_cmake ndebug_updog的博客-CSDN博客)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/417548.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MongoDB部署的10个最佳实践

MongoDB是一个非关系文档数据库&#xff0c;支持类似JSON的存储。其灵活的数据模型使您可以轻松存储非结构化数据。它于2009年首次发布&#xff0c;是最常用的NoSQL数据库。它的下载量已超过325亿次。 MongoDB在开发人员中很受欢迎&#xff0c;因为它很容易上手。多年来&#x…

ATTCK v12版本战术实战研究——提权(一)

一、概述 前几期文章中&#xff0c;我们中介绍ATT&CK 14项战术中提权战术&#xff08;一&#xff09;&#xff0c;包括提权前6项子技术。那么从前文中介绍的相关提权技术来开展测试&#xff0c;进行更深一步的分析。本文主要内容是介绍攻击者在运用提权技术时&#xff0c;…

LeetCode 112 路径总和

题目&#xff1a; 给你二叉树的根节点 root 和一个表示目标和的整数 targetSum 。判断该树中是否存在 根节点到叶子节点 的路径&#xff0c;这条路径上所有节点值相加等于目标和 targetSum 。如果存在&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 示例 1…

Spring Boot概述(一)

1. SpringBoot 概述 1.1 SpringBoot 概念 SpringBoot提供了一种快速使用Spring的方式&#xff0c;基于约定优于配置的思想&#xff0c;可以让开发人员不必在配置与逻辑业务之间进行思维的切换&#xff0c;全身心的投入到逻辑业务的代码编写中&#xff0c;从而大大提高了开发的…

数字化时代,如何通过社媒找到外贸客户?

随着全球化的深入发展&#xff0c;外贸客户的开发变得越来越重要。而在如今的数字化时代&#xff0c;社交媒体已经成为了企业开发外贸客户的重要渠道之一。本文好选客小编将从选择社媒找外贸客户的原因和方法等方面&#xff0c;为您介绍如何通过社媒找到外贸客户。 图片出处&am…

洛谷P8706 [蓝桥杯 2020 省 AB1] 解码 C语言/C++

[蓝桥杯 2020 省 AB1] 解码 题目描述 小明有一串很长的英文字母&#xff0c;可能包含大写和小写。 在这串字母中&#xff0c;有很多连续的是重复的。小明想了一个办法将这串字母表达得更短&#xff1a;将连续的几个相同字母写成字母 出现次数的形式。 例如&#xff0c;连续…

【蓝桥杯省赛真题38】Scratch流星坠落 少儿编程scratch编程蓝桥杯省赛比赛真题讲解

目录 scratch流星坠落 一、题目要求 编程实现 二、案例分析 1、角色分析

vue3中使用swiper及遇到的问题

vue3中使用swiper 一、安装swiper二、使用swiper三、echarts+swiper一、安装swiper 使用npm install swiper安装swpier插件 npm install swiper -s // @9.2.0 // 或者安装指定版本 npm install swiper@8.4.7 -s二、使用swiper 直接按照官网的引用方法,项目会报错 解决方法:…

【复现论文】Looking here or there? Gaze Following in 360-Degree Images

【复现论文】Looking here or there? Gaze Following in 360-Degree Images 论文&#xff1a;Looking here or there? Gaze Following in 360-Degree Images 论文链接&#xff1a;Looking here or there? Gaze Following in 360-Degree Images 复现github链接&#xff1a…

List集合以及它的实现类和队列、栈

List集合 Collection层次的结构接口中&#xff0c;一些允许有重复的元素&#xff0c;例如&#xff1a;List接口。而另外一些不允许有重复的元素&#xff0c;例如&#xff1a;Set接口。其中也分为了有序与无序的&#xff08;存储顺序&#xff09;。 在JDK中没有提供Collection…

ppt文件太大怎么变小,这6种方式很简单

ppt文件太大怎么变小&#xff1f; ppt文件通常用于公司会议、教育授课和商务演讲等场合&#xff0c;由于需要实现各种文档效果并插入大量图片&#xff0c;因此文件大小要远大于普通文档文件&#xff0c;占用的存储空间也不少。如果电脑中存储了大量PPT文件&#xff0c;并且不方…

不服不行!盘点那些编程界的天才少年,11岁参加国际比赛,靠奖金赚了40万美金

程序员是一项专业性极强的工作&#xff0c;需要很强的思维能力和动手能力&#xff0c;所以大多数程序员要比普通人更聪明&#xff0c;与其他职业相比&#xff0c;程序员应该是最爱学习的一行了。科技网络的发展太快&#xff0c;新的技术层出不穷&#xff0c;时刻都要更新自己的…

L2-041 插松枝 判断量少(PTA 天梯赛)

人造松枝加工场的工人需要将各种尺寸的塑料松针插到松枝干上&#xff0c;做成大大小小的松枝。他们的工作流程&#xff08;并不&#xff09;是这样的&#xff1a; 每人手边有一只小盒子&#xff0c;初始状态为空。每人面前有用不完的松枝干和一个推送器&#xff0c;每次推送一…

计算机组成原理第二章——数据的表示与运算(下)

提示&#xff1a;时光清浅处 一步一安然 文章目录前言2.3.1 浮点数的表示2.3.2 IEEE7542.2.3 浮点数的运算前言 本节主要讲三个问题&#xff0c;浮点数的表示&#xff0c;IEEE 754标准&#xff0c;浮点数的加减运算 2.3.1 浮点数的表示 浮点数的作用和基本原理 定点数可表示…

由浅入深了解HashMap源码

由经典面试题引入&#xff0c;讲解一下HashMap的底层数据结构&#xff1f;这个面试题你当然可以只答&#xff0c;HashMap底层的数据结构是由&#xff08;数组链表红黑树&#xff09;实现的&#xff0c;但是显然面试官不太满意这个答案&#xff0c;毕竟这里有一个坑需要你去填&a…

Java容器使用注意点

前置&#xff1a;问题 判空集合转map集合遍历集合去重集合转数组数组转集合 一&#xff1a;集合判空 《阿里巴巴 Java 开发手册》的描述如下&#xff1a; 判断所有集合内部的元素是否为空&#xff0c;使用 isEmpty() 方法&#xff0c;而不是 size()0 的方式。 我们在开发中也…

AI大模型突围战

最近&#xff0c;GPT赛道上争议不断&#xff0c;先是GPT-4的问世&#xff0c;用一些亮眼的功能让人类感叹自己是不是要丢工作&#xff1f;紧接着又有一封联名信刷屏&#xff0c;图灵奖得主、AI三巨头之一的约书亚本吉奥、埃隆马斯克等123个业界大佬&#xff0c;呼吁所有人工智能…

Vcpkg安装指定版本包或自定义安装包

文章目录前言寻找版本安装后话前言 windows一直用着vcpkg作为C跨平台开发的包管理&#xff0c;有些依赖要指定版本库&#xff0c;vcpkg目前最新的openssl版本是3.1.0&#xff0c;我想安装其他版本为例&#xff0c;开始本教程 寻找版本 以openssl举例&#xff0c;在vcpkg目录中…

react3:受控组件(表单默认变成受控)-组件通信 - typescript项目

受控组件&#xff1a;表单 非受控组件表单元素值不受所在组件状态的控制, 我们将这样的表单元素称作: 非受控组件. 受控组件受控组件 : 值受到 React 组件状态控制的表单元素一般是通过 defaultValue 属性, onChange 事件配合将非受控组件变为受控组件. 多表单元素操作 &#…

如果当前node.js版本和项目需要版本不一样,卸载重装其他版本node.js的方法

其实这种node.js版本不一样的问题&#xff0c;可以选择用nvm来管理node.js的不同版本。 此处仅总结卸载当前版本node.js重新安装所需版本node.js的方法 另&#xff1a;现在 用Vite官网里面的 yarn/npm等 的方法&#xff0c;创建Vue3项目——需要12版本的node.js 以下以本人 …