首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux 下make命令Makefile

Make工作原理 当make 命令被执行时,它会扫描当前目录下Makefilemakefile文件找到目标以及其依赖。...makefile之前和之后,都显示工作目录。...于是我们可以使用make命令下述参数: -n, –just-print, –dry-run, –recon 执行参数,这些参数只是打印命令,不管目标是否更新,把规则和连带规则下命令打印出来,但不执行...如果有多个“-C”参数,make解释是后面的路径以前面的作为相对路径,并以最后目录作为被指定目录。 如:“make -C ~/fany/test/prog”。...因为make“隐含规则”功能会自动为我们自动去推导这两个目标的依赖目标和生成命令make会在自己“隐含规则”库中寻找可以用规则,如果找到,那么就会使用。如果找不到,那么就会报错。

10.1K20

Makefile 使用(在 Linux 中使用 make 命令来编译程序)

命令来编译程序,特别是大程序;而 make 命令所执行动作依赖于 Makefile 文件。...3.1.3 通用 Makefile 解析 ① 零星知识点 A. make 命令使用: 执行 make 命令时,它会去当前目录下查找名为“Makefile文件,并根据它指示去执行操作,生成第一个目标...在 Makefile 中怎么放置第 1 个目标: 执行 make 命令时如果指定目标,那么它默认是去生成第 1 个目标。 所以“第 1 个目标”,位置很重要。...”文件,那么执行“make clean”时它就不会执行那些删除命令。...3.4.2 文件名函数 (1)$(dir names…) 抽取names...中每一个文件名路径部分,文件名路径部分包括从文件名首字符到最后一个斜 杠(含斜杠)之前一切字符。

8.7K10
您找到你想要的搜索结果了吗?
是的
没有找到

makefile从入门到放弃——博主吐血整理笔记

Make工程管理器就是个“自动化编译管理器”,这里“自动”是指它能够根据文件时间戳自动发现更新过文件而减少编译工作量,同时,它通过读入Makefile文件内容来执行大量编译工作。...执行make命令时会发现提示目标文件已经是最新了,将不被执行!如果我想让makefile中某个命令永远被执行。...,但是执行这些命令 -p 显示make变量数据库隐含规则 -s 在执行命令时不显示命令 -w 如果执行make在执行过程中改变目录,打印当前目录名 当然makefile也可以像C语言一样调用其他...所以,当make需要找文件依赖关系时,可以在文件前加上路径,最好办法就是把一个路径告诉make,让make在自动去找。...当使用 make 选项 “-C” 时候,命令就会进入指定目录中,然后此变量就会被重新赋值。总之,如果在 Makefile 中没有对此变量进行显式赋值操作,那么它就表示 make 工作目录。

1.6K20

安装pythonvisual模块时报错

检查 了 一些Win32平台...... 检查 了 一些Mac OSX平台...... 检查 对 Python解释器版本> = 2.2 ...蟒蛇 检查 蟒蛇......在/..... gawk检查是否设置$(MAKE)...是,检查gcc ... gcc,检查C编译器默认输出文件名... a.out检查C编译器是否工作...是,检查我们是否交叉编译...不检查可执行文件后缀...检查截断输出sed ... / bin / sed检查处理长行grep和-e ... / bin / grep检查egrep ... / bin / grep -E检查fgrep ... / bin...-fPIC -DPIC检查gcc PIC标志-fPIC -DPIC是否工作...是检查gcc静态标志-static是否工作...是检查gcc是否支持-c -o file.o ...是,检查gcc是否支持...GNU / Linux ld.so检查如何将库路径硬编码到程序中...立即检查是否可以剥离库...是的,请检查libtool是否支持共享库。

2.3K10

在window上使用cmake

makefile,然后进一步执行make来构建程序。...不得不说,cmake功能很强大,不仅可以生成make配置文件,还可以生成VS、eclipse工程文件。但是我在使用时总是碰到很多错误,首先就是cl找不到,用图形化工具时也是找不到。...首先使用MinGW下载MSYSmake工具,然后添加进系统路径,确保在命令行下make可以正常运行 下载cmake,这个可以网络搜索下载,注意添加进系统路径 在工程根目录下新建 build文件夹,进入这个文件夹...执行 cmake -G (options for generator..) ../ 注意cmake命令格式,最后...../表明source在上一级目录 很多博客用都是 . 表明是当前目录,但是会把生成文件和源文件混在一起 cmake只是生成makefile,进一步生成可执行文件需要执行make

1.4K10

技术栈系列基础篇2-Makefile

像C 语言有自己格式、关键字和函数一样。而且在Makefile中可以使用系统shell所提供任何命令来完成想要工作。...Makefile带来好处就是——“自动化编译”,一旦写好,只需要一个make命令,整个工程完全自动编译,极大提高了软件开发效率Makefile里有什么Makefile里包含了:显示规则、隐晦规则、...,是make会自动推导出来make工作方式在默认命名情况下,输入make命令做了什么?...make命令会找当前工作路径Makefilemakefile文件找到文件,会寻找文件中,第一个目标文件(target),参考上面的示例就是”test...check 和test这两个伪目标一般用来测试makefile流程。常见问题1. @echo,命令不回显@echo,make会把其要执行命令行在命令执行前输出到屏幕上。

56030

Makefile教程

4.make工作流程 执行Makefile时,在默认方式下,我们只输入make命令,则相当于make first_objname_in_Makefile,意思是生成出现在Makefile中第一个目标文件...这就是整个make依赖性,make会一层又一层地去找文件依赖关系,直到最终编译出第一个目标文件。在找寻的过程中,如果出现错误,比如最后被依赖文件找不到,那么make就会直接退出。.../lib/libxmlextern.a 此处表示Makefile需要生成第一个目标文件,也就是指明目标文件make命令默认生成目标文件。...,但需要修改Makefile环境变量VPATH让make自动寻找依赖项所在路径。.../src //指定.cpp类型文件搜索路径是src 7.4Makefile中shell命令前加@字符 make执行命令前面加了@字符,则不显示命令本身而只显示它结果。

3.9K53

Linux 开发 | 学习 Makefile

工作流程 Make 读取当前目录下命名为 GNUmakefile/Makefile/makefile 或者 -f 直接指定所有规则文件。...Make 搜寻文件 实际中,比较大工程文件都会分类放在不同目录下,当 Make 需要寻找文件依赖关系时候,需要告知去寻找路径,否则 make 只会查找当前目录。...同运行程序时候我们给个参数让程序执行特定动作一样,运行 make 时指定伪目标标签,指定执行对应命令。就如上述例子,执行 make clean 时进行清理工作。...Make 命令有几个参数并不往下传递,它们是“-C”,“-f”,“-h”“-o”和“-W” 嵌套执行中, “-w”或是“--print-directory”会在 Make 过程中让你看到目前工作目录...) # 返回绝对路径包含 . 或者 .. # 如果文件不存在,返回空 $(abspath names ...) # 返回绝对路径包含 . 或者 ..

5.3K10

【Linux系统编程】Linux项目自动化构建工具——makeMakefile

也就是说,想完成项目的自动化构建,我们需要两个东西 一个是make,它是一条指令,那我们到时候可以直接用,另一个是makefile,它是一个文件,这个文件由我们自己创建,一般就直接创建在当前源代码所在路径下...3.3 make 工作原理 接下来我把上面写Makefile修改一下: 大家想一下,如果我们想生成可执行文件,除了可以依赖源文件myfile.c之外,还可以依赖什么?...我们可以看一下: 执行make之后显示其实就是执行顺序 make是如何工作,在默认方式下,也就是我们只输入make命令。...在找寻的过程中,如果出现错误,比如最后被依赖文件找不到,那么make就会直接退出,并报错,而对于所定义命令错误,或是编译不成功,make根本不理。...还是以这个为例 大家看 我两次执行make指定默认是第一个即make myfile),有什么不同。 第一次make执行了makefile文件中第一个目标规则,并生成了对应文件。

19710

linux下源码安装

/configure生成config.h  configure.h使用autoconf和automake命令shell脚本,可以通过autoscan自动生成或手写  acconfig.h包含了configure.in...(GNU m4宏处理器处理*.m4宏文件) ####2.编译 gcc找不到头文件: sudo find /(目录) -name 文件 makefile一般格式:目标:依赖 命令  例如:a.c...=':(已被赋值变量赋值) '+=':(追加赋值,**makefile变量值都是字符串**) 变量引用:$(变量) makefile条件选择: ifeq 'arg1' 'arg2'或ifeq (.../archives/0421949.html ####3.安装  生成可执行文件安装,用make install,安装文件到usr/bin下   (卸载使用make uninstall,清理make...;桌面系统如:centos、ubuntu  linux软件包分为两大阵营:RPM和DPKG,与bin安装和源码安装相比,管理包工具使用数据库方式管理软件包和包依赖项,安装路径系统默认   RPM(

7K41

【Linux】Linux 项目自动化构建工具 -- makemakefile 使用

文章目录 一、什么是 make/makefile 二、如何编写 makefile 三、make 工作原理 1、make 使用 2、make 依赖性 3、项目清理 4、.PHONY 伪目标 四、Linux...第一个小程序 - 进度条 1、\r && \n 2、行缓冲 3、进度条 一、什么是 make/makefile 什么是 makefile 在我们以后工作环境中,一个工程中源文件不计数,其按类型、功能...什么是 make make 是一个用来解释 makefile 中指令命令工具,一般来说,大多数 IDE 都有这个命令,比如:Delphi make,Visual C++ nmake,Linux下...---- 三、make 工作原理 1、make 使用 在Linux下,我们输入 make 命令后,make 会在当前目录下找寻名为 “Makefile” 或 “makefile文件;如果找到,...; 如果 test.o 依赖文件也不存在,则继续执行该规则,直到找到存在依赖文件目标文件,得到目标文件后层层返回形成路径其他目标文件;或者最后被依赖文件找不到,直接退出并报错; 这就是整个 make

1K00

全网最牛Linux内核Makefile系统文件详解(纯文字代码)

三、make是如何工作 在默认方式下,也就是我们只输入make命令。那么, 1、make会在当前目录下找名字叫“Makefile”或“makefile文件。...在找寻的过程中,如果出现错误,比如最后被依赖文件找不到,那么make就会直接退出,并报错,而对于所定义命令错误,或是编译不成功,make根本不理。...五、make工作方式 GNUmake工作执行步骤入下:(想来其它make也是类似) 1、读入所有的Makefile。 2、读入被include其它Makefile。...所以,当make需要去找寻文件依赖关系时,你可以在文件前加上路径,但最好方法是把一个路径告诉make,让make在自动去找。...如果你指定了UNIX风格目录形式,首先,make会在SHELL 所指定路径中找寻命令解释器,如果找不到,其会在当前盘符中的当前目录中寻找,如果再找不到,其会在PATH环境变量中所定义所有路径中寻找

3.1K20

vscode基于Linux和Windows下cc++多文件编译与连接

前些天在配置Linux上vscode时候,突然发现有网友在tasks.json中command是make,突然来了兴致,想到既然用make,那我只要一个makefile,然后Ctrl+Shift+...但最终make命令执行失败,说是找不到target什么(忘了),但我不甘心,于是又是百度又是google,搜索了差不多两个小时都没有找到有效解决方法。...看到shell命令也可以时候感觉要吐血了,感觉我浪费了宝贵两个小时,明明用shell脚本就变得很简单了,有多简单?看图 tasks.json ? .make.sh ?...i bash --login -i -c "make -f %_makefile%" ::运行编译脚本MakeFile ::make 最后顺便贴一下我makefile和launch.json吧 Linux..."miDebuggerPath":"D:/MinGW32/mingw32/bin/gdb.exe", // miDebugger路径,注意这里要与MinGw路径对应 "args": ["blackkitty

2.8K70

【linux命令讲解大全】107.pwd 命令:显示当前工作目录绝对路径

pwd 显示当前工作目录绝对路径。 补充说明 pwd(英文全拼:print working directory)命令用于显示用户当前所在工作目录(以绝对路径显示)。...内建命令 概要 pwd [-LP] 选项 -L(默认值): 打印环境变量$PWD值,可能为符号链接。 -P: 打印当前工作目录物理位置。...注意 该命令是bash内建命令,相关帮助信息请查看help命令。 外部命令 概要 pwd [OPTION]... 主要用途 显示当前工作目录。...启动或关闭内建命令请查看enable命令,关于同名优先级问题请查看builtin命令例子部分相关讨论。...例子 查看当前所在路径 [root@localhost var]# pwd /var 显示软连接文件最终指向文件路径 [root@localhost ~]# cd /var/ # 进入/var目录

44210

CmakeList编写和参数详解

大家好,又见面了,我是你们朋友全栈君。 在linux 下进行开发很多人选择编写makefile 文件进行项目环境搭建,而makefile 文件依赖关系复杂,工作量很大,搞的人头很大。...采用自动化项目构建工具cmake 可以将程序员从复杂makefile 文件中解脱出来。...cmake 根据内置规则和语法来自动生成相关makefile 文件进行编译,同时还支持静态库和动态库构建,我把工作中用到东东总结在此,方便忘记时随时查看,具体cmake介绍和详细语法还是参考官方文档...使用cmake 很简单,只需要执行cmake, make 两个命令即可,用我工作一个工程举例说明。 假设当前项目代码在src 目录。...本站仅提供信息存储空间服务,拥有所有权,承担相关法律责任。如发现本站有涉嫌侵权/违法违规内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

1.5K50

Linux从入门到入土③(GCC、静态与动态链接库、Git、MakeMakefile)

,所有目标也可以有很多个通过执行规则中命令,可以只执行一个动作,生成任何文件,这样目标被称为伪目标依赖(depend): 规则所必需依赖条件,在规则命令中可以使用这些依赖。...# c.o 是第一条规则中依赖c.o:c.cgcc -c c.cMakefile工作原理规则执行在调用 make 命令编译程序时候,make 会首先找到 Makefile 文件中第 1 个规则,...因此规则 2, 规则 3, 规则 4 里命令会相继被执行,当规则 1 中依赖全部被生成之后对应命令也就被执行了,因此规则 1 目标被生成,make 工作结束。...拓:如果想要执行 makefile 中非第一条规则对应命令,那么就不能直接 make, 需要将那条规则目标也写到 make 后边,比如只需要执行规则 3 中命令,就需要: make b.o文件时间戳...make 命令执行时候会根据文件时间戳判定是否执行 makefile 文件中相关规则中命令

1.5K10
领券