linux - 如何在为 armv7 交叉编译图集时减少构建时间?
问题描述
我正在尝试为 armv7 cortex-a9 处理器交叉编译 atlas 库。当我尝试make build
时,从源代码构建库需要五个多小时。我认为问题在于它运行了所有的健全性测试。有没有办法跳过这个?
主机系统:ubuntu 16.4在一个虚拟盒子中,分配了 4gb ram 和 2 个内核。
目标系统:cortex a9,小端armv7架构
构建过程:
export PATH =$PATH:PATH TO ARM TOOL CHAIN FROM BUILDROOT
export CC=arm-linux-gcc
export ARCH=arm
export RANLIB=arm-linux-ranlib
export STRIP=arm-linux-strip
export LD=arm-linux-ld
export CPP=arm-linux-cpp
export AR=arm-linux-ar
export AS=arm-linux-as
export FC=arm-linux-gfortran
downloaded the atlas library
tar -xf atlas.3.10.3.tat.gz
cd ATLAS
mkdir test
cd test
../configure -Si archdef 0
make build
知道我是否缺少中间的一些步骤或在 make 时要包含的任何构建命令会很有帮助,这样就不会发生健全性测试并且我会尽快得到输出?
解决方案
虽然它没有回答您的问题,但仅供参考 - 现代方法docker
用于构建、CI 测试等。VM(如 VirtualBox)会吃掉更多的资源。
对于 ARM 交叉编译,您可以考虑https://github.com/dockcross/dockcross它也有 Cortex-A9 的图像。
如果您的 makefile 运行长时间的测试,那么确实可以选择跳过它们。如果作者为此目的实现了某些东西,请检查 makefile。
推荐阅读
- javascript - 如何在 antd 步骤中滚动到顶部。反应
- c# - 攻击动画不触发
- javascript - jquery获取数组数组中的值
- java - Spring OAuth2 配置流程。我需要自己的登录控制器来登录用户以提供资源服务访问吗?
- css - Bootstrap 4.3 导航栏下拉列表和汉堡菜单不起作用
- scala - 在 Spark DataFrame 中应用过滤器后找不到属性
- angular - 如何路由具有多个段的 url 部分
- checkbox - yii2 复选框未显示,但标签可见
- spring - 通过 Spring Data JPA 保存时遇到问题
- javascript - 从字符串中删除索引 [number]