Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ Travis构建时间超过50分钟->;杀死_C++_Unix_Ubuntu 14.04_Travis Ci - Fatal编程技术网

C++ Travis构建时间超过50分钟->;杀死

C++ Travis构建时间超过50分钟->;杀死,c++,unix,ubuntu-14.04,travis-ci,C++,Unix,Ubuntu 14.04,Travis Ci,我有个问题,我需要从源代码安装boost1.58+最新的HDF5+其他库(因为trusty没有最新版本) 建立在特拉维斯的基础上 手动安装需要50分钟以上的时间,这使得travis终止了工作。我可以做些什么来减少或增加构建时间? 或者我需要一种从versions>Ubuntu14.04 LTS安装软件包的方法 或者以某种方式使用travis缓存(如何使用??) 谢谢你的帮助 我使用boost的经验是,问题不在于大小,而在于文件的数量。您可以使用bcp创建boost的最小子集: 一旦所有东西都安

我有个问题,我需要从源代码安装boost1.58+最新的HDF5+其他库(因为trusty没有最新版本) 建立在特拉维斯的基础上

手动安装需要50分钟以上的时间,这使得travis终止了工作。我可以做些什么来减少或增加构建时间? 或者我需要一种从versions>Ubuntu14.04 LTS安装软件包的方法 或者以某种方式使用travis缓存(如何使用??)


谢谢你的帮助

我使用boost的经验是,问题不在于大小,而在于文件的数量。您可以使用bcp创建boost的最小子集:

一旦所有东西都安装好了,您是否在并行地进行构建,比如
make--jobs
?Travis VM上只有2个CPU,但这可以显著缩短构建时间

我们还尝试了Travis依赖缓存,但它只创建了一个tar文件,因此没有给我们任何改进。如果由于连接速度慢,任何库的下载时间都很长,那么它可能会很有用。

libboost1.60-all-dev在中被列为白名单,因此它可以从中列出的其他源之一获得。您可以尝试缓存构建工件(包含.o文件的中间目录)以及源文件的时间。因为它们很少改变,所以它们不会每次都重建


是一个可以帮助您使用mtime缓存的工具,而Travis CI的缓存可以处理其余部分。

我的构建现在需要大约52分钟(假设有两个内核),并被Travis杀死。。。陛下我真的需要求助于编译不同内容的不同分支吗?嗯……啊,我想我可以通过Travistar中的构建矩阵来实现这一点,在安装boost的/usr/local中进行缓存不是一个好主意?boost已经作为一个tar文件分发,因此,重新tar的唯一原因是,如果您从S3下载它的速度远远快于从其官方下载站点下载它的速度。我构建boost->cache libs,并在下一个构建中包括和重用它,因为我发现缓存sudo required目录在travis中不起作用:所以我将
/usr/local
复制到home dir并缓存
.travis.yml
中指定的目录。