首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >为什么当我更改一个文件时,'make‘会重新编译几个文件?

为什么当我更改一个文件时,'make‘会重新编译几个文件?
EN

Stack Overflow用户
提问于 2011-12-07 07:13:57
回答 3查看 146关注 0票数 0

当我编辑一个源文件时,运行make是否会重新编译该文件以及该文件所依赖的所有文件?如果有,原因何在?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-12-07 07:16:52

为什么?

因为这就是创建Make文件的全部目的。

如果特定的源文件被修改,那么所有依赖文件都应该用修改后的文件重新编译,以便所有依赖文件引用相同的源文件,并且整个代码库是同步的。

How?

make实用程序检查时间戳以检查创建了modified.When文件的文件,需要指定依赖规则,它显式地告诉该实用程序哪些其他文件依赖于特定文件。因此,使用这些规则Make还会编译所有依赖文件,以便生成的二进制文件引用相同的更新代码。

票数 4
EN

Stack Overflow用户

发布于 2011-12-07 07:16:49

如果该文件包含在其他文件中,那么期望这些其他文件重新编译是合理的,因为您不希望程序的“一半”是新的,而另一半是“一半”旧的。

票数 4
EN

Stack Overflow用户

发布于 2011-12-07 07:15:58

当我编辑一个源文件时,运行make是否会重新编译该文件以及该文件所依赖的所有文件?如果有,原因何在?

这可能发生在一个糟糕的makefile上(你还没有发布它的样子)。

或者,源文件包含模板的实现,并包含在某个地方。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8411668

复制
相关文章
entr:文件更改时重新运行构建
这是一篇简短的文章。我是最近才发现 entr 的,我很惊奇从来没有人告诉过我?!因此,如果你和我一样,那么我告诉你它是什么。
用户8639654
2021/09/14
6240
批量更改文件
# 代码示例 import os godir = os.listdir('F:\cka认证\oldboy_go') for i in godir : print(i) if i.count('樱花论坛') : filename = i.split('【樱花论坛 www.sakuraaaa.com】',1)[1] print(filename) oldname = 'F:/cka认证/oldboy_go/'+i newname
章工运维
2023/05/19
7140
更改host文件_添加host文件
国内无法访问GitHub的问题除了用某工具访问,还可以通过host文件来达到效果,缺点就是需要经常更新ip地址。
全栈程序员站长
2022/11/04
4K0
更改host文件_添加host文件
make命令和makefile文件
  make命令和makefile文件的结合提供了一个在项目管理领域十分强大的工具,它不仅常被用于控制源代码的编译,而且还用于手册页的编写以及将应用程序安装到目标目录。
全栈程序员站长
2022/07/18
2.6K0
Intellij如何设置编译后自动重新加载class文件?
前段时间突然发现Intellij不能自动重新加载类了,每次编译后都要重新启动项目,才能显示更新效果,后来网上查询Intellij下如何配置热部署,都说是要配置构件,然后在web容器的编辑页面选择update resources and classes什么的,尝试后发现每次类是重新加载了,但是项目会自动重启一下,没解决我的问题。
程序员一一涤生
2019/09/10
2.5K0
python3源码编译安装时make出现
今天打算把我系统自带的python2升级成3 通过官网下载后进行源码编译安装 但是 源码编译安装python3,出现报错。 collect2: 错误:ld 返回 1 make: *** [python] 错误 1
py3study
2020/01/03
2.1K0
为什么QtCreator保存文件会多一个换行符?
看似不经意的行为,找找原因也挺有意思的。 当光标移到文件末尾时可以更容易看到光标; 在Unix中换行符是文本文件结束标志之一; C标准文件中源文件必须是文本文件,这就导致了每行必须以换行符结尾,不然会
Qt君
2019/09/25
7600
为什么QtCreator保存文件会多一个换行符?
当我们优化用户配置文件时我们在优化什么?
相信做过VDI虚拟桌面(现在更多被称之为“云桌面”)或终端标准化的兄弟们对用户配置文件优化应该都不陌生,无数个夜晚,无数次操作,只为了默认配置文件能够兼容应用的一个控件或一个设置。有可能仅仅是一个软件的小Feature或一个B/S系统的小表格,我们可能都要耗费上N久的时间。
SuperDream
2020/06/03
2.6K1
Linux文件权限管理:如何更改文件权限
在Linux系统中,文件权限是一个重要的概念,它决定了谁可以对文件进行读取、写入和执行操作。正确地管理文件权限对于确保系统安全和数据保护至关重要。本文将介绍如何在Linux中更改文件权限,并提供参考文章以便深入学习。
用户10665603
2023/07/31
2K0
【Groovy】编译时元编程 ( 编译 ASTTransformation | 打包 ASTTransformation 字节码文件 | 编译 Groovy 类同进行编译时处理 )
命令 , 编译 ASTTransformation 实现类 ; 编译后会在 Y:\002_WorkSpace\003_IDEA\Groovy_Demo2\src\main\groovy\classes 目录生成 MyASTTransformation.class 文件 ;
韩曙亮
2023/03/30
4520
【Groovy】编译时元编程 ( 编译 ASTTransformation | 打包 ASTTransformation 字节码文件 | 编译 Groovy 类同进行编译时处理 )
在 Git 中当更改一个文件名为首字母大写时
一般开发中在 Mac 上开发程序,并使用 Git 进行版本管理,在使用 React 编写 Component 时,组件名一般建议首字母大写。
山月
2021/01/04
1.7K0
Linux下更改文件权限[通俗易懂]
可以发现,每一个文件的第一个字段都是由r、w、x等10个字符构成,这10个字符所组成的字符串反映了文件的权限。
全栈程序员站长
2022/09/17
6.5K0
Linux下更改文件权限[通俗易懂]
Linux更改文件的权限[通俗易懂]
一、命令chown(change owner)-更改文件的所有者 语法:chown 【-R】 账户名/账户名:组名 文件名
全栈程序员站长
2022/10/03
6.4K0
php编译时没有phpize文件的解决办法
php编译时没有phpize文件的解决办法,常码字不易,出精品更难,没有特别幸运,那么请先特别努力,别因为懒惰而失败,还矫情地将原因归于自己倒霉。你必须特别努力,才能显得毫不费力。如果这篇文章能给你带来一点帮助,希望给飞兔小哥哥一键三连,表示支持,谢谢各位小伙伴们。
用户8053452
2021/05/31
1K0
未找到入口 app.json 文件,或者文件读取失败,请检查后重新编译。
1. 打开文件project.config.json,找到miniprogramRoot 如下图:
honey缘木鱼
2019/03/01
2.3K0
未找到入口 app.json 文件,或者文件读取失败,请检查后重新编译。
windows如何实现共享文件但不让更改文件和拿走文件
从微软资料看,windows自带的功能貌似比较困难,有人在微软论坛问过同样问题,答复是windows设计的就是读取即copy
Windows技术交流
2021/09/01
1.3K0
编译配置in文件
使用cmake配置configure_file命令转换in文件为宏替换后的文件配置
sofu456
2022/06/26
8430
编译配置in文件
更改Mac上的文件关联
最近更新了coda,结果原先跟coda关联的文件变成了跟DW关联了,真是“墙头草”。找了很久不没找到在哪更改关联程序,最后终于搜到啦,比windows还要简单,直接在文件属性里就可以修改了,操作如下:
GhostZhang
2022/08/21
1.6K0
重点!_头文件&源文件&编译&链接
比如在a.h中声明了一个类a,包含成员变量和成员函数的声明,在a.cpp中包含类a成员函数的定义(实现)
用户10551528
2023/05/09
7760
如何不重新编译让 Spring Boot 配置文件生效?
松哥最近正在录制 TienChin 项目视频~采用 Spring Boot+Vue3 技术栈,里边会涉及到各种好玩的技术,小伙伴们来和松哥一起做一个完成率超 90% 的项目,戳戳戳这里-->TienChin 项目配套视频来啦。
江南一点雨
2023/01/04
2K0
如何不重新编译让 Spring Boot 配置文件生效?

相似问题

gnu make。仅重新编译未更改的文件

20

Make不会重新编译头文件更改。尽管包括.d依赖文件

11

在编辑源文件时,‘'make’不会重新编译

33

Make重新编译未更新的文件

10

Make重新编译未修改的文件

31
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文