How do I install perl to C:\perl?

I don’t want it installed in the Users directory. That directory structure is not meant for exe installations, I don’t know why ActiveState defaults to that tree, it’s just plain WRONG. How can I fix this?


If you only intend to ever install a single build of perl and not modify it by including more or updated modules, you can use the state deploy command to install your build and this command allows you to specify exactly where you would like your build installed. You can do this with, for example:

state deploy --path C:\ActiveState\my-perl-build my_platform_org/my_project_name

This will install the build in C:\ActiveState\my-perl-build, but you can choose whichever directory you like. Note that this is a more traditional form of installation that will set some environment variables globally and has all the downsides of traditional installs, especially if you try to install multiple versions.

ActiveState installs the way we do, having the powershell script uses our CLI tool (the state tool) to create a virtualized environment for your perl install, meaning you can have multiple versions of perls with different mixes of modules installed on your machine at the same time and switch between them using state activate (see the state tool documentation for more information). The powershell script also installs your build as a “default” virtual environment such that if you don’t have any other perl build activated, this one will be used by default. It does this by modifying you PATH environment variable to include the directory where the default virtual environment bootstrap scripts are installed.