Question

The prompt says that if I install the software into a directory with spaces:

the rebuild build tool used by the D Shared Source System will fail to build

and that I will be

forced to reinstall in a different location

However, I don't like random things in my C:\ drive. D, IMO, belongs in Program Files with PHP and MinGW and so on. How can I get it here?

If it matters, I'm using the Easy D installer package.

Was it helpful?

Solution

You can also use NTFS Link to create junction points (symlinks for all intents and purposes) and hard links on NTFS file systems. The functionality is built into the NTFS drivers, but an interface was never implemented for it, presumably to avoid things like recursive directory structures (endless virus scan loops anyone?). This package exposes an interface to this functionality.

I'd then create a symlink from C:\Program Files\ to something like C:\ProgramFiles\, hence disposing with the problematic space. This means that anything added to one directory will be added to the other, because both directories point to the same place on disk.

More info on NTFS Junction Points.

Info on NTFS symlinks (Vista only, but doesn't need NTFS Link to be installed.)

OTHER TIPS

You could try using the old DOS 8.3 name for the Program Files directory, although this solution is implementation- and locale-dependent, and thus somewhat deprecated. On most US English systems, the 8.3 name of the C:\Program Files directory is C:\PROGRA~1. So, instead of installing to "C:\Program Files\dmd", you'd install to "C:\PROGRA~1\dmd". Hopefully, the configuration files for the misbehaving programs won't know the difference.

You could install it into C:\Program Files, and then use the subst command to make it appear as a new drive letter:

subst x: "c:\program files\d"

I actually use a "c:\Programs" for situations such as this - quite a few applications don't work well in directories with spaces in them.

It doesn't cause confusion since it's different enough from "c:\Program Files" - earlier attempts used "c:\ProgramFiles" (without the space) but this was too similar.

I have a C:\Dev folder on my machine for things like this. That way you only have one folder on the main directory and it stays unclutered.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top