I'm installing Cygwin and GNU C compiler with the help of the tutorial How to Install the Latest GCC on Windows
I have completed the following steps
- Install Cygwin
- Install Required Cygwin Packages
The 3rd step is "Download, Build and Install the Latest GCC".
I'm stuck when I run the make -j4
command with the following error in the Cygwin Terminal
.
$ make -j4 make[1]: Entering directory '/home/Prasanna Rajaram/build-gcc-6.1.0' Configuring in ./intl Configuring in ./libiberty Configuring in ./lto-plugin /bin/sh: /home/Prasanna: No such file or directory Makefile:7416: recipe for target 'configure-libiberty' failed make[1]: *** [configure-libiberty] Error 1 make[1]: *** Waiting for unfinished jobs.... Configuring in ./fixincludes /bin/sh: /home/Prasanna: No such file or directory Makefile:5330: recipe for target 'configure-intl' failed make[1]: *** [configure-intl] Error 1 /bin/sh: /home/Prasanna: No such file or directory Makefile:9308: recipe for target 'configure-lto-plugin' failed make[1]: *** [configure-lto-plugin] Error 1 /bin/sh: /home/Prasanna: No such file or directory Makefile:3470: recipe for target 'configure-fixincludes' failed make[1]: *** [configure-fixincludes] Error 1 make[1]: Leaving directory '/home/Prasanna Rajaram/build-gcc-6.1.0' Makefile:879: recipe for target 'all' failed make: *** [all] Error 2
I also do guess where it has gone wrong. In my home directory path '/home/Prasanna Rajaram/
there is a space between my first and last name. I don't know how Windows 10 had created a folder name like that, under the C:\Users
directory.
How can I overcome this problem? I'm reluctant to rename the user directory as one word (like:PrasannaRajaram
) as this might affect other programs which might use this path.
There is also this thought, that this path may apply only for Cygwin as it starts with /home
How can I make this work?
Edit-1 After the following the steps from the below answer
mkdir /home/prasanna mkpasswd -c > /etc/passwd sed -i -e "s/Prasanna Rajaram/prasanna/g" /etc/passwd
The output on Cygwin now looks like this:
$ make -j4 make[1]: Entering directory '/home/Prasanna Rajaram/build-gcc-6.1.0' Configuring in ./lto-plugin Configuring in ./intl Configuring in ./fixincludes /home/Prasanna: /home/Prasanna: is a directory Makefile:9308: recipe for target 'configure-lto-plugin' failed make[1]: *** [configure-lto-plugin] Error 1 make[1]: *** Waiting for unfinished jobs.... Configuring in ./libiberty /home/Prasanna: /home/Prasanna: is a directory Makefile:5330: recipe for target 'configure-intl' failed make[1]: *** [configure-intl] Error 1 /home/Prasanna: /home/Prasanna: is a directory Makefile:3470: recipe for target 'configure-fixincludes' failed make[1]: *** [configure-fixincludes] Error 1 /home/Prasanna: /home/Prasanna: is a directory Makefile:7416: recipe for target 'configure-libiberty' failed make[1]: *** [configure-libiberty] Error 1 make[1]: Leaving directory '/home/Prasanna Rajaram/build-gcc-6.1.0' Makefile:879: recipe for target 'all' failed make: *** [all] Error 2