how create compiler compile c linux compiler-errors makefile

create - No se puede compilar con make | error fatal No queda espacio en el dispositivo



makefile linux c (2)

Situación: acaba de instalar Linux, intentando aprender a codificar c. Se configura con sudo apt-get install build-essential. Abra el nano tipo en mi código

#include <stdio.h> int main(int argc, char *argv[]) { puts("Hello World./n"); return 0; }

abra otra pestaña de la consola, ingrese make ex1, luego mi mundo gira hacia abajo en el abismo más oscuro que aún tengo que experimentar en mi primera distribución de Linux.

ragnar@ragnar:~/Documents/C$ make ex1 cc -Wall -g ex1.c -o ex1 ex1.c:7:1: fatal error: error closing /tmp/cc8d7Oap.s: No space left on device } ^ compilation terminated. make: *** [ex1] Error 1 ragnar@ragnar:~/Documents/C$ df -h Filesystem Size Used Avail Use% Mounted on /dev/sdb5 4.0G 3.8G 0 100% / none 4.0K 0 4.0K 0% /sys/fs/cgroup udev 7.9G 8.0K 7.9G 1% /dev tmpfs 1.6G 1.4M 1.6G 1% /run none 5.0M 0 5.0M 0% /run/lock none 7.9G 8.1M 7.9G 1% /run/shm none 100M 28K 100M 1% /run/user /dev/sdb2 96M 29M 68M 30% /boot/efi /dev/sdb7 11G 248M 9.5G 3% /home

toda ayuda es apreciada.


La partición que contiene la carpeta raíz ( / ) está 100% llena. La carpeta raíz actualmente también contiene la carpeta /tmp , que se usa durante la compilación para almacenar archivos temporales. Como la carpeta raíz y con esto la carpeta tmp está llena, esto falla.

Para evitar esto, agregue más espacio o reorganice el existente.

Como solución alternativa

mkdir ~/tmp export TMPDIR=~/tmp

y reintentar la compilación.

Una forma flexible de organizar un sistema de archivos es usar particiones separadas para

/ /usr /home /var /tmp

Un enfoque lento sería vincular /tmp/ a /var/tmp . Sin embargo, esto podría causar problemas, ya que en términos de limpieza, el SO podría manejar el contenido en /var/tmp diferente del contenido en /tmp . Ese es el contenido de /tmp/ que se eliminaría en cada inicio, ya que /var/tmp no lo haría.


aquí está mi resultado de df:

[857][rkwill.rkwill-desktop: /home/rkwill]$ df -h -T Filesystem Type Size Used Avail Use% Mounted on /dev/sda1 ext4 910G 16G 849G 2% / none tmpfs 4.0K 0 4.0K 0% /sys/fs/cgroup udev devtmpfs 3.4G 4.0K 3.4G 1% /dev tmpfs tmpfs 684M 1.5M 683M 1% /run none tmpfs 5.0M 0 5.0M 0% /run/lock none tmpfs 3.4G 96K 3.4G 1% /run/shm none tmpfs 100M 68K 100M 1% /run/user

Puede notar que mi partición de disco es muy simple (la partición de intercambio es ~ 6gigs)

El disco real es de 1 tera byte.

Los discos de bytes de tera son muy baratos hoy en día.

Todo tu disco parece tener ~ 33gig. Eso fue genial en los días de MS-DOS y las primeras versiones de Linux.

Sin embargo, mi Ubuntu 14.04 Linux solo está usando ~ 26 gigs del disco

(y tengo numerosas utilidades, complementos, imágenes, videos, código fuente para varios proyectos, etc.)

sugiera hacer la instalación inicial (hasta que sepa más sobre cómo funcionará todo) con solo las particiones / y de intercambio.

Cuando uso múltiples particiones, organizo sugerencias similares a @alk, con la adición de una partición para windows, para / lib y para / etc.

Tal partición permite un acceso más rápido en mis servidores, con múltiples discos duros, y modos de falla más seguros, pero no vale la pena para mi escritorio.

Mi computadora de escritorio tiene un disco duro externo de tera byte de múltiples particiones para realizar copias de seguridad.