Makefile编译选项:CFLAGS、LDFLAGS、LIBS

news/2024/12/22 20:33:27/

目录

一、CFLAGS

二、LDFLAGS

三、LIBS

四、参考资料


前言

本文只涉及cflags、ldflags、libs,关于makefile文件非常建议看看大神写的系列博客《跟我一起写Makefile》:

跟我一起写 Makefile(一)_haoel的博客-CSDN博客

一、CFLAGS

指定.h文件路径,如:CFLAGS=-I./include I../test/include。

CFLAGS表示用于C编译器的选项,CXXFLAGS表示用于C++编译器的选项

CFLAGS标志参数说明

类别

名称

说明

编译选项

-S

只是编译不汇编,生成汇编代码

-E

只进行预编译,不做其他处理

-g

在可执行程序中包含标准调试信息

-o file

把产生文件输出到file里去

-v

打印出编译器内部编译过程的命令行信息和编译器的版本

-I dir

在头文件搜索路径列表中添加dir目录

-L dir

在库文件的搜索路径列表中添加dir目录

告警和出错选项-ansi支持符合ANSI标准的C程序
-pedantic允许发出ANSI C标准所列的全部警告信息
-pedantic -error允许发出ANSI C标准所列的全部错误信息
-w关闭所有告警
-Wall允许发出gcc提供的所有有用的报警信息
-werror把所有的告警信息转化为错误信息,并在告警发生时终止编译过程
优化选项-Onn是代表优化级别的整数
体系结构选项-mcpu=type

针对不同的CPU使用相应的CPU指令。可选择的type有i386、i486、pentium及i686

-mieee-fp使用IEEE标准进行浮点数的比较
-mno-ieee-fp不使用IEEE标准进行浮点数的比较
-msoft-float输出包含浮点库调用的目标代码
-mshort把int类型作为16位处理,相当于short int
-mrtd强行将函数参数个数固定的函数用ret NUM返回,节省调用函数的一条指令

二、LDFLAGS

编译器的优化参数,也可指定库文件位置,如:LDFLAGS=-L/usr/lib

三、LIBS

要链接的库文件,如:LIBS=-lpthread

四、参考资料

Makefile选项CFLAGS,LDFLAGS,LIBS - Taskiller - 博客园

CFLAGS详解_xinyuan0214的博客-CSDN博客_cflags编写makefile


http://www.ppmy.cn/news/11717.html

相关文章

少儿Python每日一题(22):杨辉三角

原题解答 本次的题目如下所示: 杨辉三角形又称Pascal三角形,它的第i+1i+1行是的展开式的系数。 它的一个重要性质是:三角形中的每个数字等于它两肩上的数字相加。 下面给出了杨辉三角形的前4行: 1 1 1 1 2 1 1 3 3 1 给出n,输出它的前n行。 输入: 输入包含一个数n。 输出…

Java学习之单例设计模式

目录 设计模式 单例模式 一、饿汉式 二、懒汉式 三、饿汉式VS懒汉式 总结 设计模式 1.静态方法和属性的经典使用 2.设计模式是在大量的实践中总结和理论化之后优选的代码结构、编程风格以及解决问题的思考方式。就像是经典的棋谱,不同的棋局,我们用…

【Nginx】Nginx配置实例-反向代理

1. 反向代理实例一 实现过程 1. 启动一个 tomcat,浏览器地址栏输入 127.0.0.1:8080,出现如下界面2. 通过修改本地 host 文件,将 www.123.com 映射到 127.0.0.13. 在 nginx.conf 配置文件中增加如下配置 2. 反向代理实例二 实现过程 1.准备两…

机器学习--方差和偏差、Bagging、Boosting、Stacking

目录 一、方差和偏差 数学定义 对公式的解释 减小偏差、方差、噪声 总结 二、Bagging 代码实现 bagging什么时候会变好 不稳定的learner ​总结 三、Boosting Gradient boosting gradient boosting 的代码实现 gradient boosting的效果 ​总结 四、Stacking st…

PyQt5 serial模块-串口小工具

PyQt5 serial模块-串口小工具串口简述serial模块参数方法使用模板串口工具示例串口简述 异步串行是指UART(Universal Asynchronous Receiver/Transmitter),通用异步接收/发送。UART是一个并行输入成为串行输出的芯片,通常集成在主…

React 学习笔记总结(七)

针对React拓展相关的学习。 文章目录一. React 项目打包二. React扩展 之 setState两种写法三. React扩展 之 lazyLoad(懒加载)四、React的 stateHook五、React 的 Effect Hook六、React 的 RefHook七、React 的 Fragment八、React 的 Context九、React 的 PureComponent1. Com…

windows排查问题常用命令

查看JAVA进程占用PID: wmic process where caption"java.exe" get processid,caption,commandline /value查看进程端口信息:netstat -ano 或者 netstat -ano|findstr "8080" 或查看成功建立连接的:netstat -ano | findstr “ESTABLI…

本地小说阅读网站打造

目录 一、本地小说网站总体组织框架 1、所需的VUE库和elementLib以及JQ库 2、本地目录设计 3、整体代码样式 二、正文核心代码 1、引入element 样式,和自定义的样式 2、引入JS 3、自定义Header组件 1)vue 定义MyHeader组件 2)MyHead…