mkshortcut fails when run from setup, postinstall/cygwin-doc.sh - not otherwise

Enrique Perez-Terron enrique@perezterron.net
Wed Dec 20 15:36:00 GMT 2017


Lately, whenever I run setup (x86), my /var/log/setup.log.full contains:

  2017/12/20 03:07:44 running: C:\cygwin\bin\bash.exe --norc --noprofile 
"/etc/postinstall/cygwin-doc.sh"
  mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start 
Menu/Programs/C:/cygwin/User Guide (PDF).lnk" failed; does the target 
directory exist?
  mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start 
Menu/Programs/C:/cygwin/User Guide (HTML).lnk" failed; does the target 
directory exist?
  mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start 
Menu/Programs/C:/cygwin/API (PDF).lnk" failed; does the target directory 
exist?
  mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start 
Menu/Programs/C:/cygwin/API (HTML).lnk" failed; does the target 
directory exist?
  mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start 
Menu/Programs/C:/cygwin/Home Page.lnk" failed; does the target directory 
exist?
  mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start 
Menu/Programs/C:/cygwin/FAQ.lnk" failed; does the target directory 
exist?
  2017/12/20 03:07:45 abnormal exit: exit code=3

Please notice the extra C:/ in front of the target link name.

So I have added a line "set -x" at the top in  
postinstall/cygwin-doc.sh, and the relevant section becomes

  + read target name desc
  + '[' -r ']'
  + /bin/mkshortcut -A -P -n 'Cygwin/User Guide (PDF)' -d 'Cygwin User 
Guide PDF' -- /usr/share/doc/cygwin-doc/cygwin-ug-net.pdf
  mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start 
Menu/Programs/C:/cygwin/User Guide (PDF).lnk" failed; does the target 
directory exist?
  + read target name desc
  + '[' -r ']'
  + /bin/mkshortcut -A -P -n 'Cygwin/User Guide (HTML)' -d 'Cygwin User 
Guide HTML' -- /usr/share/doc/cygwin-doc/html/cygwin-ug-net/index.html
  mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start 
Menu/Programs/C:/cygwin/User Guide (HTML).lnk" failed; does the target 
directory exist?
  + read target name desc
  + '[' -r ']'
  + /bin/mkshortcut -A -P -n 'Cygwin/API (PDF)' -d 'Cygwin API Reference 
PDF' -- /usr/share/doc/cygwin-doc/cygwin-api.pdf
  mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start 
Menu/Programs/C:/cygwin/API (PDF).lnk" failed; does the target directory 
exist?
  + read target name desc
  + '[' -r ']'
  + /bin/mkshortcut -A -P -n 'Cygwin/API (HTML)' -d 'Cygwin API Reference 
HTML' -- /usr/share/doc/cygwin-doc/html/cygwin-api/index.html
  mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start 
Menu/Programs/C:/cygwin/API (HTML).lnk" failed; does the target 
directory exist?
  + read target name desc
  + read target name desc
  + /bin/mkshortcut -A -P -n 'Cygwin/Home Page' -d 'Cygwin Home Page 
Link' -a https://cygwin.com/index.html -- /bin/cygstart
  mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start 
Menu/Programs/C:/cygwin/Home Page.lnk" failed; does the target directory 
exist?
  + read target name desc
  + /bin/mkshortcut -A -P -n Cygwin/FAQ -d 'Cygwin Frequently Asked 
Questions Link' -a https://cygwin.com/faq.html -- /bin/cygstart
  mkshortcut: Saving "/cygdrive/c/ProgramData/Microsoft/Windows/Start 
Menu/Programs/C:/cygwin/FAQ.lnk" failed; does the target directory 
exist?


(by the way -- this reveals another bug too: The script says "[ -r $t ] 
&& $mks ..." where I am sure it should be "[ -r $target ] && $mks ...")
(and again btw, I am not sure bash should count "[ -r ]" as a true 
statement)



The script issues mkshortcut commands with sane arguments, no extra 
"C:/" in there.

So I just tried to run the script from an elevated-privilege mintty 
shell:

  $ CYGWINFORALL=-A /bin/bash /etc/postinstall/cygwin-doc.sh

But then it does NOT fail, and the shortcuts do get installed -- they 
were not present before.


I am still running the 32-bit cygwin, though on a 64-bit windows 10 Home 
edition, version 1709, OS build 16299.125.

Any ideas about what could be the problem?

-Enrique

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list