1
votes

I am newbie for Linux and build systems and I am trying to move code base from Linux to Windows. I am getting some issues for build.

I have installed

and when I build my application, I am getting following error :

arm-none-eabi-gcc.exe: error:
/cygdrive/d/developments/RIOT/examples/ipc_pingpong/main.c: No such file or directory
arm-none-eabi-gcc.exe: fatal error: no input files
compilation terminated.

It looks like a path problem between cygwin (cygdriver) and windows. I have also set CYGPATH as c:\cygwin64\bin\cygpath.exe but result is same.

Why gcc compiler cannot see my files? Any idea.

Regards.

Murat.

3
Have you checked if the path exists within cygwin by doing e.g. $ ls /cygdrive/d/developments/RIOT/examples/ipc_pingpong/main.c? How did you set the CYGPATH environment variable? $ set CYGPATH=C:/cygwin/bin/cygpath.exe from the cygwin shell (which is bash, iirc) won't work. Try the method in microsoft.com/resources/documentation/windows/xp/all/proddocs/…. - Ulfalizer
I have checked file with $ls and also see content with $cat and it can find file. I have already set CYGPATH like as your microsft link. - Murat
Not sure what's going on then. You could $ echo $CYGPATH too, just as a sanity check. - Ulfalizer
$ echo $CYGPATH -> C:\cygwin64\bin\cygpath.exe - Murat
the error message is indicating that the main.c file is located on the windows 'd:\' drive in directory:' /developments/RIOT/examples/ipc_pingpong/' and the error message is saying that the file (and possibly the directory path) is not correct. Suggest fixing those details. - user3629249

3 Answers

3
votes

At this point the arm-none-eabi toolchain from https://launchpad.net/gcc-arm-embedded doesn't support being invoked from Cygwin cmake/make as it doesn't understand Cygwin style absolute path specifications passed. Anecdotally it will work with a makefile that contains solely relative paths, however cmake generates makefiles with absolute paths.

See https://bugs.launchpad.net/gcc-arm-embedded/+bug/1282943

1
votes

I have tried MinGW instead of Cygwin and problem is solved.

Following link is very helpfull for MinGW setup : http://www.jann.cc/2013/10/10/embedded_development_with_open_source_tools_on_windows.html

Thanks. Murat

0
votes

Check output of command

which gcc

If you can find the path of gcc file you are fine. If you could not please modify the env varibale PATH by including the path of gcc as follows. If full path of gcc file is $/gcc, then you have to correct $PATH as follows

$PATH:$GCC_PATH

$PATH may be defined within .profile file of your home directory.