我想在一台机器 (Debian 6) 上构建多个版本的 libreoffice,并希望自动针对一组测试用例测试这些版本。我还想通过针对允许的 GTK 和其他依赖项的多个版本进行编译/链接来测试给定的 libreoffice 版本。
组织此类沙盒和测试的最佳方式是什么?也欢迎对此方向的任何指示。
我不想为这项工作设置多个虚拟机的开销,因为虚拟机占用大量空间和 CPU 带宽,并且也使得向虚拟机插入/提取数据变得困难。
编辑:有关任何 Linux 发行版的信息都可以,我会尝试使其适应 Debian。
答案1
我在 CentOS (基于 Redhat/RPM 的发行版) 上所做的工作:
- 下载 RPM。存储到临时目录。
- 创建用于存放程序的目录。
- 将文件解压到目录中。对于 rpm
- 对于 /tmp/dir/*.rpm 中的文件;执行 rpm2cpio $FILE | cpio -iv --make-directories
- 找到可执行文件的“基本”目录:
- 查找 /path/to/install/dir -name soffice -type f | xargs dirname
- 设置 PATH 以包含上述目录。
对于 Debian,我将用类似以下内容替代步骤 3:
for FILE in /tmp/dir/*.rpm ; do dpkg-deb -X $FILE ; done
但我没有基于 Debian 的发行版来确认布局是否符合我的预期。我也会看看它dpkg-deb --fsys-tarfile archive $FILE | tar -xvf -
是否dpkg-deb -X
不起作用。