虚拟交换缓存不足导致qt编译失败

qt pro make 失败:

复制代码
virtual memory exhausted: Cannot allocate memory
Makefile:9155: recipe for target 'qrc_myimages.o' failed
make: *** [qrc_myimages.o] Error 1
make: *** Waiting for unfinished jobs....

virtual memory exhausted: Cannot allocate memory

查看内存:

复制代码
free -h
             total        used        free      shared  buff/cache   available
Mem:           3.8G        450M        2.4G        101M        974M        3.2G
Swap:            0B          0B          0B

设置交换缓存:

bash 复制代码
mkdir swap
sudo dd if=/dev/zero of=swapfile bs=1M count=2048 #设置2GB缓存,bs 为块的大小,count 创建多少个块
sudo chmod 0600 swapfile #设置权限
sudo mkswap swapfile #生成的文件转换成 Swap 文件
sudo swapon swapfile  ## 激活文件
free -h # 执行命令可以看到新增了2G

              total        used        free      shared  buff/cache   available
Mem:           3.8G        848M        2.4G         91M        544M        2.8G
Swap:          2.0G        309M        1.7G

释放缓存

bash 复制代码
sudo swapoff swapfile # 执行命令后,删除创建的swap目录即可

开机自动使用该虚拟内存的启动脚本

bash 复制代码
#此时开的虚拟内存会在开机后消失,如果永久保持下去,在/etc/fstab文件尾添加一下信息:
swapfilepath swap swap defaults 0 0
#例如:我的我是在/root/进行的配置,因此添加了下面内容
/data/swap/swapfile swap swap defaults 0 0
#保存并退出即可

参考

相关推荐
EndingCoder5 小时前
配置 tsconfig.json:高级选项
linux·前端·ubuntu·typescript·json
壮哥_icon7 小时前
Ubuntu 虚拟机中编译 Android 源码完整指南(含分卷合并、虚拟内存配置、复制粘贴设置及依赖库安装)
linux·运维·ubuntu
Source.Liu10 小时前
【Ubuntu】文件与目录管理命令
linux·运维·ubuntu
Linux蓝魔11 小时前
外网同步所有ubuntu源到内网使用
linux·数据库·ubuntu
chenzhiyuan201812 小时前
ARMxy 工业边缘控制器生态全解析:采集、控制、AI、可视化与运维一体化边缘大脑
arm
空空空空空空空空空空空空如也12 小时前
QT编译程序在Ubuntu下不进桌面直接启动和避免重复启动的方法
linux·运维·ubuntu
YQ_0113 小时前
Ubuntu 18.04 离线安装 CUDA 11.2 + cuDNN 8.2 (修复 Paddle 缺少 .so 报错)
linux·ubuntu·paddle
Lam㊣13 小时前
Ubuntu永久网络静态路由配置
linux·运维·服务器·网络·ubuntu
Source.Liu14 小时前
【Ubuntu】关机重启命令
linux·运维·ubuntu
Source.Liu16 小时前
【IT工具】Ubuntu 环境下使用 Flask
linux·ubuntu·flask