Menu

mkfifo cannot create fifo ``x'': No such file

Help
2005-01-08
2012-07-26
  • Nobody/Anonymous

    When trying to create a named pipe using mkfifo I keep receiving the following error message...

    > mkfifo mypipename
    > mkfifo.exe: cannot create fifo ``mypipename'': No such file or directory

    Installed using fileutils-4.1-8-bin.exe and running on Windows XP SP2.

    Any help would be appreciated...

     
    • - 2006-10-03

      likewise, has anyone figured out how to use mkfifo on win32??

      C:\Program Files\GnuWin32\bin>mkfifo blah
      mkfifo: cannot create fifo `blah'

       
      • Anonymous

        Anonymous - 2006-10-03

        What exactly do you think mkfifo should do on Win32? (Remember we are not in some POSIX emulation environment like Cygwin here.) Win32 named pipes have little in common with POSIX named pipes, despite the name, so I doubt it would make much sense having a "mkfifo" on Win32 do something related to Win32 named pipes.

         
        • Nobody/Anonymous

          An example of mkfifo use on win32-
          I have a device that can capture video to a file. The application can ONLY write to a file. I want to transcode the video file using ffmpeg. As it is now, I have to create the original file, then run it through ffmpeg (which can be started while the original video is still writing)- ending up with 2 large files (original not needed anymore). With a mkfifo utility, a 'pipe file' can be created, sending the original video to this 'pipe file' and the ffmpeg getting its input from this same 'pipe file'. The original video will be transcoded on the fly (running through the pipe), ending up with only 1 transcoded file. Applications that can't make use of 'normal' command line pipes can then make use of pipes.

          Maybe there is some other utility out there to do this, but apparently the win32 port of mkfifo doesn't do anything as far as I can tell.

           
          • Anonymous

            Anonymous - 2006-10-30

            Well, such "pipe files" don't exist on Windows, to the best of my knowledge. What you are describing is very Unix specific.

             
            • paul@webica.nl

              paul@webica.nl - 2007-09-17

              Well... you should read wiki then

              http://en.wikipedia.org/wiki/Named_pipe

              Named pipes ARE used by and in windows, but they work differently.
              Nevertheless they can be used with some adjustments in the same manner.

              Kind regards
              Paul

               
              • Anonymous

                Anonymous - 2007-09-17

                I know. That's what I was saying. Windows and Unix named pipes have little in common except the name.

                 
    • - 2006-10-04

      well then what does mkfifo do on win32? why is it in coreutils? why was it ported?

      win2k and xp have named pipes... look at CreateNamedPipe in the api...

      http://msdn.microsoft.com/library/default.asp?url=/library/en-us/ipc/base/named_pipes.asp

      wiki has some more info
      http://en.wikipedia.org/wiki/Named_pipe

      not sure how useful a win32 named pipe is anyhow...

       
      • Anonymous

        Anonymous - 2006-10-04

        Yes, I know Windows has named pipes. But their usage and behaviour have little in common with POSIX named pipes. (See the Wikipedia article you linked to, did you read it?)

        Yes, they are useful, but only in Win32-specific code explicitly written to use them. No way can code that thinks it is handling POSIX named pipes expect to work with Win32 named pipes. "porting" mkfifo seems rather pointless.

         
MongoDB Logo MongoDB