【发布时间】:2019-06-03 14:26:52
【问题描述】:
我继承了一个使用 autoconfigure/automake 构建的相当大的项目(configure.ac/Makefile.am 文件有其自身的问题,但这是一个单独的问题)。
我的问题是顶级构建 + 构建安装会生成几个静态和动态库以及二进制文件。到现在为止还挺好。问题是“make install”会不加选择地复制这些库/箱中的每一个。 (这需要一段时间)
我希望它只复制已更改的库/bin - 可能通过比较目标文件和源文件的 md5sum。
如何在我的 configure.ac/Makefile.am 中连接它?
【问题讨论】:
-
好的,所以你的comapre & copy
make install方案读取两个文件,比较,并可能写入一个文件。通常的make install读取一个文件,写入一个文件。这个“时间”需要多长时间?秒?分钟?您希望通过您的方案实现什么运行时? -
你是对的 - 复制时间大约是几分钟。我实现了下面建议的“-C”选项,它根本没有带来任何明显的加速。
-
好的,那么至少你有一个尝试其他事情的基线。有几篇关于 SO 的文章询问有关在 RAM 磁盘上构建的问题。那可以试试。但是您的构建可能会遇到其他一些硬件限制(例如 CPU),因此在 RAM 磁盘上构建可能也不会产生很大的影响。您必须找出真正发生的事情(无论是构建本身还是构建硬件),以使您的构建更快。
标签: gnu-make autoconf automake