cannot create fifo 'logs/pipe': Operation not supported on Windows
Running this in VS Code in a WSL terminal:
me@ThisMachine:/mnt/c/Projects/OpenDevin/OpenDevin$ make setup-config
Setting up config.toml...
Enter your LLM API key: sk-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Enter your LLM Model name [default: gpt-4-0125-preview]:
Enter your workspace directory [default: ./workspace]:
me@ThisMachine:/mnt/c/Projects/OpenDevin/OpenDevin$ make run
Running the app...
mkfifo: cannot create fifo 'logs/pipe': Operation not supported
make: *** [Makefile:38: run] Error 1
me@ThisMachine:/mnt/c/Projects/OpenDevin/OpenDevin$
GitHub Copilot says: The error message you're seeing is due to the fact that the mkfifo command is trying to create a named pipe (also known as a FIFO) in a filesystem that doesn't support it. In this case, it's likely that the filesystem is mounted under WSL (Windows Subsystem for Linux), but the actual filesystem is NTFS, which is a Windows filesystem that doesn't support named pipes.
You have a few options to resolve this:
Create the FIFO in a supported filesystem: You could change the location where the FIFO is created to a location that resides in a filesystem that supports it. This would typically be somewhere in the Linux filesystem, not under the /mnt/ directory.
Change the command to not use a FIFO: If the FIFO is not essential for your application, you could modify the Makefile to not use a FIFO. This might involve changing how logging is handled in your application.
Use a different method for inter-process communication: If the FIFO is being used for inter-process communication, you could change your application to use a different method of inter-process communication that is supported on both Linux and Windows.
Originally posted by @jaslogic1 in https://github.com/OpenDevin/OpenDevin/issues/651#issuecomment-2034761600
The issue revolves around make run. I noticed this lastnight as well and not sure if it's fixed yet. Just run seperate instances using: make start-backend make start-frontend
Until it's fixed, but considering how fast-paced this project has been it shouldn't be long.
Using fifo is to allow make run to display the logs of backend and frontend at the same time. If Windows doesn't support it, there don't seem to be any good solutions to achieve a similar effect.
A simple solution is to let make run remind users to use make start-frontend and make start-backend to start separately in Windows. What do you guys think?
Sort of fixed now