Greetings, Doug Henderson! >> >>> When I do that in an elevated shell: >> >>> >> >>> $ cd /etc/postinstall/ >> >>> >> >>> $ cat gnuplot-base.dash >> >>> /usr/sbin/alternatives --install /usr/bin/gnuplot gnuplot >> >>> /usr/bin/gnuplot-base.exe 10 >> >>> >> >>> $ . gnuplot-base.dash >> >>> failed to read link /usr/bin/gnuplot: No such file or directory >> >>> failed to link /usr/bin/gnuplot -> /etc/alternatives/gnuplot: No such >> >>> file or directory >> >> >> >> Something seems to be confusing 'alternatives'. Can you show a listing of >> >> /etc/alternatives? >> > >> > $ cd /etc/alternatives/ >> > >> > $ ls -l >> > total 2.0K >> > lrwxrwxrwx 1 Admin None 35 Oct 3 2017 automake-doc -> >> > /usr/share/info/automake1.9.info.gz >> > lrwxrwxrwx 1 Admin None 19 Jun 16 17:48 lua -> /usr/bin/lua5.3.exe* >> > lrwxrwxrwx 1 Admin None 31 Jun 16 17:48 lua.1.gz -> >> > /usr/share/man/man1/lua5.3.1.gz >> > lrwxrwxrwx 1 Admin None 20 Jun 16 17:48 luac -> /usr/bin/luac5.3.exe* >> > lrwxrwxrwx 1 Admin None 32 Jun 16 17:48 luac.1.gz -> >> > /usr/share/man/man1/luac5.3.1.gz >> > lrwxrwxrwx 1 Admin None 15 Jun 5 08:46 pip3 -> /usr/bin/pip3.8* >> > lrwxrwxrwx 1 Admin None 22 Jun 16 07:34 python -> /usr/bin/python3.8.exe* >> > -rw-r--r-- 1 Admin None 163 Apr 4 2013 README >> >> This shows that alternatives worked in June. Have you changed anything since >> then that might be related to symlinks (e.g., the CYGWIN environment >> variable)? >> >> Here are a few other things you could try: >> >> 1. Attach cygcheck output as requested in https://cygwin.com/problems.html >> >> 2. Add --verbose to the alternatives call. >> >> 3. Run the alternatives call under strace and look for errors involving >> symlinks. Or post the output somewhere so that we can look at it.
> Now using setup-x86_64.exe version 2.909 (64 bit) > Postinstall script errors: > Package: _/Unknown package > gnuplot-base.dash exit code 2 > python38-devel.sh exit code 2 > Here's what I did in an elevated shell. > $ cd /etc/alternatives > $ cat /etc/postinstall/gnuplot-base.dash > /usr/sbin/alternatives --install /usr/bin/gnuplot gnuplot > /usr/bin/gnuplot-base.exe 10 > $ /usr/sbin/alternatives --verbose --install /usr/bin/gnuplot gnuplot > /usr/bin/gnuplot-base.exe 10 > reading /var/lib/alternatives/gnuplot > failed to read link /usr/bin/gnuplot: No such file or directory > failed to link /usr/bin/gnuplot -> /etc/alternatives/gnuplot: No such > file or directory > $ echo $CYGWIN > winsymlinks:nativestrict > *** changed system environment > $ echo $CYGWIN > winsymlinks:native > $ /usr/sbin/alternatives --verbose --install /usr/bin/gnuplot gnuplot > /usr/bin/gnuplot-base.exe 10 > reading /var/lib/alternatives/gnuplot > *** Success > Alternatives does not work correctly when CYGWIN=nativestrict. Perhaps > it is trying to create a link before the link target exists. Unlike > Linux, Windows does not allow creating symbolic links to non-existent > targets. > The /etc/postinstall/python38-devel.sh also works now. > Also after changing env back to CYGWIN=winsymlinks:nativestrict the > erroring postinstall scripts continue to work. This supports my > suspicion that /usr/sbin/alternatives is trying to create a symbolic > link to a target before it creates the target when it is performing > the first install for an alternative. On subsequent runs, the target > already exists. > I have unattached the output from cygcheck, as I do not believe it > will help now. > Am I the only person that uses "CYGWIN=winsymlinks:nativestrict" ??? $ echo "$CYGWIN" wincmdln winsymlinks:nativestrict glob:ignorecase > Sorry for all the bother. My aging brain forgot how I made > alternatives work for Lua last month. I've stumbled upon the same problem earlier. alternatives tries to create a link pointing to a nonexistent file. Which is valid in Linux, but impossible in Windows. IMO, this is a logical fallacy and should not be attempted, making it an upstream bug. -- With best regards, Andrey Repin Friday, July 16, 2021 6:56:55 Sorry for my terrible english... -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple