Setting up SITL on Windows

Hello respected members!
I am installing SITL on windows 10. when I reach this step

> cd ~/ardupilot/ArduCopter
> make sitl -j4
So it gives me the following error
…/mk/apm.mk:25: /modules/uavcan/libuavcan/include.mk: No such file or directory
make: *** No rule to make target ‘/modules/uavcan/libuavcan/include.mk’. Stop.
I searched the similar problems on forum someone said that to check that “include.mk” file is available or not, so I checked it, its there. One respected member also said that dont need to perform this step, just go to desired directory and type “sim_vehicle.py” but it says command not found, But still the same problem.
Please help me to solve this problem. Bunch of thanks

The error suggests that the correct include.mk file is not in the uavcan module.

Are you following these steps? http://ardupilot.org/dev/docs/sitl-native-on-windows.html I didn’t write them, but I understand some parts… I’ll try to help if I can.

Idea 1: Close the old terminals, open a new terminal, and run the following 4 commands in order:

cd ~/ardupilot

git pull

git submodule update --init --recursive

make sitl

I expect you’ll get the exact same error, but I want to make sure.

Idea 2: There is some text just above the step which seems to fail. It says:
If you have an existing clone of the ArduPilot repository, navigate to it in the terminal using “cd /cygdrive/drive/path”
ie “cd /cygdrive/c/Users/James/Documents/GitHub/ardupilot” (substitute your own path).

Did you do something like this, or ignore it?

Idea 3: Could you copy-and-paste the output from the following commands for us to see?

ls -lah ~/ardupilot/modules/uavcan/libuavcan/

cat ~/ardupilot/modules/uavcan/libuavcan/include.mk

Sir thank you very much for your precious time.
One thing I want to mention that on SITL setup on Windows using Cygwin (not recommended) — Dev documentation
I have skipped the packages for If you want to compile the firmware as well then you should also install these packages step 4. So is this necessary just for using simulator ?
And what you said in your comments I am mentioning them here bellow.
Idea one

make -C ArduPlane sitl
make[1]: Entering directory '/home/Engr Ibrahim/ardupilot/ArduPlane'
../mk/apm.mk:25: /modules/uavcan/libuavcan/include.mk: No such file or directory
make[1]: *** No rule to make target '/modules/uavcan/libuavcan/include.mk'.  Stop.
make[1]: Leaving directory '/home/Engr Ibrahim/ardupilot/ArduPlane'
make: *** [Makefile:18: plane] Error 2

And about the second idea I am not sure. Because I just followed what is mentioned on the website
http://ardupilot.org/dev/docs/sitl-native-on-windows.html
Output of
ls -lah ~/ardupilot/modules/uavcan/libuavcan/

total 30K
drwxr-xr-x+ 1 Engr Ibrahim None 0 Jun 8 11:42 .
drwxr-xr-x+ 1 Engr Ibrahim None 0 Jun 8 11:42 …
-rw-r–r-- 1 Engr Ibrahim None 6.9K Jun 8 11:42 CMakeLists.txt
-rwxr-xr-x 1 Engr Ibrahim None 668 Jun 8 11:42 cppcheck.sh
drwxr-xr-x+ 1 Engr Ibrahim None 0 Jun 8 11:42 dsdl_compiler
drwxr-xr-x+ 1 Engr Ibrahim None 0 Jun 8 11:42 include
-rw-r–r-- 1 Engr Ibrahim None 469 Jun 8 11:42 include.mk
drwxr-xr-x+ 1 Engr Ibrahim None 0 Jun 8 11:42 src
drwxr-xr-x+ 1 Engr Ibrahim None 0 Jun 8 11:42 test
drwxr-xr-x+ 1 Engr Ibrahim None 0 Jun 8 11:42 tools

Output of

cat ~/ardupilot/modules/uavcan/libuavcan/include.mk
#
# Copyright (C) 2014 Pavel Kirienko pavel.kirienko@gmail.com
#

LIBUAVCAN_DIR := $(dir $(lastword $(MAKEFILE_LIST)))

UAVCAN_DIR := $(LIBUAVCAN_DIR)../

#
# Library sources
#
LIBUAVCAN_SRC := $(shell find $(LIBUAVCAN_DIR)src -type f -name '*.cpp')

LIBUAVCAN_INC := $(LIBUAVCAN_DIR)include

#
# DSDL compiler executable
#
LIBUAVCAN_DSDLC := $(LIBUAVCAN_DIR)dsdl_compiler/libuavcan_dsdlc

#
# Standard DSDL definitions
#
UAVCAN_DSDL_DIR := $(UAVCAN_DIR)/dsdl/uavcan

I found something which may be important.
The “No such file or directory” error is looking for

/modules/uavcan/libuavcan/include.mk

which is different than

./modules/uavcan/libuavcan/include.mk

or perhaps

~/ardupilot/modules/uavcan/libuavcan/include.mk

The difference is the . or ~/ardupilot at the beginning, this pre-fix is important. It may be a clue that the make process is looking in the wrong place for the file.

Does anyone else know how to solve this? If yes, please post and let us know! (This is just my best guess.)

Also, your first post shows you following directions for SITL in ArduCopter

But your second post is making in ArduPlane

It may or may not be important… but what do you actually want to do?

One more thing: Your home directory “Engr Ibrahim” has a space in it. I have seen spaces in directory names cause problems. Could you change it to Engr_Ibrahim and try again? That might be the whole problem…

For my idea #1, did you run all 4 of those commands, in order? Here is a previous post where someone had the same error… Error while compiling SITL for ArduPilot