【发布时间】:2012-03-18 10:02:20
【问题描述】:
我有一个使用 makefile 编译代码的源目录。此 makefile/配置文件不是为了 ccache 兼容性而编写的。所以我想用ccache。我在 .bashrc 中创建了别名为alias gcc='ccache gcc',但是 Makefile 仍然没有考虑 gcc 的这个定义。那么有什么我可以在不接触Makefile/configure 文件的情况下使用ccache gcc 而不是gcc。
CC='ccache gcc' ./configure 也不是一个选项,因为它不要求 CC。
如果我编写 Makefile,那么我可以提供 ${gcc),但这不是一个选项,因为我不是在编写 Makefile。有什么方法我们不需要更改源文件中的任何内容,但仍然启用ccache 编译。
【问题讨论】:
-
那么,Makefile 用什么来编译呢?是否硬编码使用
gcc而不是$(CC)? -
Makefile 是由 configure 创建的,而后者又是由 autoconf 创建的,尽管 makefile 会解析 configure.in。但是更改会产生另一个“配置文件已更改”的问题,所以我正在寻找一种方法,在不更改源文件( makefile/configure )的情况下有什么方法可以这样做。