Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support installation of Windows binaries in an installation prefix different from C:\robotology #608

Open
Iaxama opened this issue Feb 3, 2021 · 5 comments

Comments

@Iaxama
Copy link

Iaxama commented Feb 3, 2021

When installing using the windows installer on a drive different than C: some environment variables point to C nonetheless.

In my case the installation was on D:\robotology and the environment variables added to the path were:

C:\robotology\robotology\bin
C:\robotology\robotology\lib\rtf

instead of:

D:\robotology\robotology\bin
D:\robotology\robotology\lib\rtf

@traversaro
Copy link
Member

At the moment, the installer do not officially support being installed in prefix different from C:\robotology , mainly due to YARP (related issues: robotology/yarp#2445) and Gazebo (gazebosim/gazebo-classic#2782, gazebosim/gazebo-classic#2755) not being properly relocatable packages. Unfortunately, I notice that this is not documented in the main robotology readme, while it is documented in https://icub-tech-iit.github.io/documentation/sw_installation/windows_binaries/ .

Ideally it would be great to avoid that the installer prompts the user to change the install prefix, but I never understood how to do that.

@traversaro traversaro changed the title Env Variables on Windows Support installation of Windows binaries in an installation prefix different from C:\robotology Feb 3, 2021
@traversaro
Copy link
Member

I renamed your issue to reflect the underlying problem, so that we have an issue in which to track this improvement.

@traversaro
Copy link
Member

Note that even if at the moment we do not support this explicitly, it should be possible to still use the binaries installed in D:\robotology with a few fixes:

At this point, you can run again the D:/robotology/scripts/addPathsToUserEnvVariables.ps1 script to update again the env variables. If you want to use instead the setup.bat or setup.sh scripts, you will need to update those files instead to refer to D: instead of C:.

@Iaxama
Copy link
Author

Iaxama commented Feb 12, 2021

Hi @traversaro sorry for the late response. At the moment I have simply fixed the issue by manually changing the environment variables to have the prefix D: instead of C: and everything seems to work correctly.

Maybe just using the installation prefix in the env variable script setup might solve the issue. 🤷‍♂️

@traversaro
Copy link
Member

traversaro commented Feb 12, 2021

Maybe just using the installation prefix in the env variable script setup might solve the issue. 🤷‍♂️

Unfortunately that scripts is generate when the installer is generated, and so the installation prefix is not known (as it can be changed by the user). So the solution is either to make the script relocatable (i.e. such that they know their location, and they set all those variables depending on their location, see #264) or to add in the installer a step that fix the scripts.

However, as we could have conda binaries also on Windows at some point in the future (see #620), I would wait for that stage, and investigate if we can simply generate these installers using Conda Constructor, as this should fix all the problems as Conda has automatic support for fixing this kind of non-relocatable scripts (see https://docs.conda.io/projects/conda-build/en/latest/resources/make-relocatable.html).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants