zoukankan      html  css  js  c++  java
  • Linux 编译时内存不足

    1、编译内核出现问题:No space left on device

     AS      .tmp_kallsyms1.o

    .tmp_kallsyms1.S:2: fatal error: when writing output to /tmp/ccf0eS0W.s: No space left on device

    compilation terminated.

    make: *** [.tmp_kallsyms1.o] Error 1

    arm-none-Linux-gnueabi-objcopy: 'vmlinux': No such file

    cp: cannot stat `linux.bin': No such file or directory

    gzip: linux.bin: No such file or directory

    ./mkimage: Can't open kernel.bin: No such file or directory

    root@debian:/mnt/kernelsrc/linux-3.3# 

    主要是系统 /tmp/空间不足引起的,tmp文件夹空间不足了,不能满足编译的需求,编译的中间文件不能写入。

    解决办法 mkdir  文件夹——你可以使用的文件夹 比如说 mkdir /mnt/kernelsrc/tmp

    然后只要export TMPDIR=/mnt/kernelsrc/tmp

    这样就不会出现 tmp文件夹不够用的情况。

    2、编译程序时,如果出现类似virtual memory exhausted: Cannot allocate memory的错误时,可以用下面的方法解决

    创建swap挂载点

    # mkdir /opt/images/

    # rm -rf /opt/images/swap

    设置挂载swap的大小,64M*32=2GB

    # dd if=/dev/zero of=/opt/images/swap bs=64M count=32

    # mkswap /opt/images/swap

    开启swap

    # swapon /opt/images/swap

    这个时候,可以执行之前内存不足时的命令了,正常情况下,执行时间会比较长,但是能过去

    最后,可以考虑关闭swap并删除挂载文件

    # swapoff swap
    # rm -f /opt/images/swap

  • 相关阅读:
    C语言中标识符的作用域、命名空间、链接属性、生命周期、存储类型
    循环练习
    ArrayList集合

    方法
    表单标签
    HTML基础
    二维数组
    一维数组
    switch选择结构
  • 原文地址:https://www.cnblogs.com/Baron-Lu/p/6808827.html
Copyright © 2011-2022 走看看