- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
众所周知,二进制文件取决于obj,而obj取决于.c文件(假定为C项目)。假设我有一个env.mk文件。该文件具有“export NO_DISPLAY = YES”之类的标志。在主Makefile中,我有以下内容。
ifeq ($(NO_DISPLAY),YES)
CFLAGS += -D__DISPLAY_DISABLE
endif
target_dbg: $(patsubst ./src/%.c,./obj_dbg/%.o,$(wildcard ./src/*.c))
@echo "Target main rule__dbg $(NPROCS)"
$(CC) $(patsubst ./src/%.c,./obj_dbg/%.o,$(wildcard ./src/*.c)) $(LIBS) -o gif_dbg
./obj_dbg/%.o: ./src/%.c ./include/*.h
@echo "I am called first..dbg"
@mkdir -p ./obj_dbg
#$(CC) $(CFLAGS) -E $<
$(CC) $(CFLAGS) $(LDFLAGS) -DDEBUG -c $< -o $@
最佳答案
通过检查文件上的时间戳,Make可以简单地工作。您几乎不希望每个构建工件都依赖Makefile
(至少在积极开发它时不),但是如果您认真地希望Make处理这种依赖关系,则可以将CFLAGS
定义放在辅助文件buildflags.mk
中,包括在主Makefile
中,并使所有目标文件都依赖buildflags.mk
。
不过,我几乎认为没有人会实际这样做。在所有情况下,确保获得完整构建的唯一方法是冲洗所有内容并重新开始。确保您拥有良好且最新的realclean
和/或distclean
目标,并确保在对构建基础结构进行根本性更改时记得使用它们。每晚进行一次构建工作(或类似工作),从完全干净的状态开始进行构建-例如通过将新副本 check out 到临时目录中-显然也是一个好主意。
另外,在每个目标文件中都将构建标志的副本作为静态字符串包括在内,以便稍后可以使用--help
选项或类似方法对其进行验证。
关于makefile - 修改CFLAGS时生成文件did't rebuild the obj's?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18547777/
我们在Eclipse中有几个使用CDT(CodeSourcery++)的C项目。 有两个项目可构建库,以供构建最终应用程序的“主”项目中使用。 现在我们发现重建其中一个库不会导致主项目也被重建。显然,
一些背景: 我正在为一个包含 Android 应用程序的大型项目使用 MSBuild 开发持续集成管道。该应用程序包括一些需要定期集成到项目中的自动生成的文件。这通常是通过手动复制它们并在 andro
众所周知,二进制文件取决于obj,而obj取决于.c文件(假定为C项目)。假设我有一个env.mk文件。该文件具有“export NO_DISPLAY = YES”之类的标志。在主Makefile中,
https://www.jetbrains.com/help/idea/compilation-types.html?search=rebuild 根据复杂类型的描述,重建项目会重新编译所有源文件,并
我在 xp 中运行 vs08,试图测试我已经研究了一段时间的 c++ 解决方案。 该解决方案由多个项目组成,我正在处理的两个项目分别包含服务器和客户端。我构建了服务器和客户端项目的调试实例来测试它们之
我成功安装了 MINGW32 和 CMake,并重建了 OpenCV 2.3.2( super 包)。但是 V2.4.2 不是 superpak 并且不具有 V2.3.1 具有的所有文件。我尝试重建的
这可能看起来很愚蠢,但我删除了其中一个节点上数据目录 (/var/lib/scylla/data/*) 中的所有内容。现在,为了恢复数据,我可以运行 nodetool repair 或 nodetoo
当我滚动到 ListView 的底部时,底部的项将被重建。当我滚动到顶部时,我的第一个项目被重建。第一项是带有可选筹码的卡,这种筹码在发生这种情况时会被取消选择。并且“入口”动画也会重播。我该如何阻止
我知道 docker 有一个 --no-cache=true 选项来强制干净地构建 docker 镜像。然而,对我来说,我真正想做的就是强制最后一步在我的 dockerfile 中运行,这是一个运行
这几天在做SQL调优,在测试的时候发现了一个奇怪的sql: SELECT StatMan([SC0],[SC1], [SB0000]) FROM (SELECT TOP 100 PERCENT [SC
为什么重建失败但没有错误? 从今天早上开始,这个错误不断出现。我构建了整个解决方案(25 个 C# 管理的项目)并出现“全部重建失败”,但没有任何错误! (我有 13 个关于 COM 不支持泛型的警告
我正在使用 Gitlab CI 来存储和部署 docker 镜像,但我遇到了一个大问题。 Gitlab CI 会在每次提交时重建所有图像。 第一步是构建我的常用镜像,大约需要 8 分钟。目前我只修改子
我有一个使用库(DPK/视觉控件)的程序。该库是在 Debug模式下编译的。这意味着优化是关闭的,范围检查是打开的,等等。库设置为“根据需要重建”。我不打算重新分发它(仅供内部使用)。 如果我在“发布
我正在测试 Electron 和串口模块的使用…… 当我运行 electron .命令,出现此错误: The module '…/teste3/node_modules/@serialport/bin
我需要将新生成的 apk 复制到远程机器上,所以目前我在桌面上有一个图标,它会触发 Python 脚本。 我希望这个脚本在重建项目成功后被 Android Studio 自动调用。 我怎样才能做到这一
所以我建立了我的第一个应用程序。这是一个天气应用程序。到目前为止,一切都按预期进行。但是有一个问题,每当我关闭应用程序然后重新打开它时,所有内容都为空(天气预报,位置名称,最高和最低温度)。当我按下刷
我收到命令 drush cache-rebuild 的[错误]找不到驱动程序 以下是 Drush 和 Drupal 版本详细信息,感谢任何帮助。谢谢 最佳答案 我将 wampp 与 PostgreSQ
我刚刚发现(困难的方式),如果您在从 Visual Studio 执行“重建”或“清理 -> 构建”后将应用程序部署到设备,您的应用程序将首先被卸载,然后重新安装,从而导致隔离存储文件被删除。 应用程
如何构建库(静态库或 dll/so),使其对系统的 C 运行时库的 future 更新不敏感? 7月底,微软updated一堆库,包括 C 运行时库。我们的应用程序是使用 MFC/C++/VB 和一些
在我的项目中,我有 2 个模块:app 和 library。当我在 Android Studio 3.0.1 中运行 Rebuild 时,会运行 3 个 gradle 任务: 干净 :library:
我是一名优秀的程序员,十分优秀!