Операция mknod не разрешена

У меня проблема с этим makefile, всегда говорите мне, что mknod 'T0' операция не разрешена

all: tx es_mux demux
     mknod T0 p
     mknod T1 p
     mknod T2 p
     mknod T3 p
     mknod T4 p
     mknod T5 p
     mknod T6 p
     mknod T7 p
     mknod T8 p
     mknod T9 p

tx: 
    gcc -Wall tx.c -o tx

es_mux: 
    gcc -Wall es_mux.c  -o es_mux

demux:
    gcc -Wall demux.c  -o demux

clean: 
    rm -f tx
    rm -f demux
    rm -f es_mux
    rm -f T0 T1 T2 T3 T4 T5 T6 T7 T8 T9

Я использую виртуальную машину с параллелями на MBP.

1 ответ

У вас есть разрешения для этого в текущем рабочем каталоге? Обычно mknod предназначен для создания именованных каналов. Он также может создавать специальные символьные файлы или файлы, находящиеся в каталоге /dev. Какого черта тебе нужны эти трубы - если это то, чем они должны быть? Я не могу понять, почему они нужны в вашем make-файле. GCC не требует их.

(в любом случае рассмотрим mkfifo для труб):

Другие вопросы по тегам