Bugzilla – Bug 4034
build-perl-modules.pl fails for 2006-09-01 nightly
Last modified: 2011-03-16 04:34:10 UTC
SlimServer 6.5b1 2006-09-01 Solaris 9 U5 Perl 5.8.7 build-perl-modules.pl fails. Relevant output is Library for XML-Parser-2.34.tar.gz is OK! Downloading YAML-Syck-0.64.tar.gz to: /usr/local/src/SlimServer_6.5_v2006-09-01/Bin/build-downloads Uncompressing.. Configuring.. /usr/local/bin/perl Makefile.PL < y sh: y: cannot open There was a problem creating Makefile - exiting! Last time I tried this was with the 2006-08-27 nightly. It worked then. The diff between the two is # diff build-perl-modules.pl ../../SlimServer_6.5_v2006-08-27/Bin/ 60,64d59 < < 'YAML-Syck-0.64' => { < < 'Makefile.PL' => ' < y', < },
While not necessarily appropriate, changing 'Makefile.PL' => ' < y', to 'Makefile.PL' => ' > y', allowed the build to complete. Given that running Makefile.PL was generating output, I suspect that output redirection, ">", was the actual intent with input redirection being, "<", being a typo.
this is bug 4021. note that the patch was indeed < and was tested. > actually failed in that case. clearly more data is required. perhaps this is a problem when no earlier YAML version is detected and the redirect isn't needed.
From bug 4021, it appears that the intent is to feed the two byte sequence 'y' <LF> to the YAML build. Looks like that was attempted by doing < y so as to open on stdin the file "y" in the current working directory. However, no file named y existed. So, could the issue be that the file needs to be created (or otherwise packaged)? Could it be that the person implementing this had that file sitting around as they were testing but didn't update the build procedure to generate it or otherwise include it in the packaging?
y is a standard unix program that sends a 'y' response when any input is required. Thus, the < can be used to direct the 'y' response repeatedly during a procedure. solaris should have some sort of equivalent. the 'person' testing it did not have to generate it, or even do anything special to install it on any system going back to at least a 1990 sun 3 workstation.
the problem is that for cases where the build does NOT detect a previous version of YAML-Syck, no response is required. providing a response, when none is expected could be just an problematic as no reponse when one is required. again, this really is bug 3021, which should be re-opened and some other solution found.
Well, please then keep in mind that "y" is not part of your typical Solaris nor OS X developer installs. A solution which works on platforms more recent than a 16 year old Sun 3 running Sun OS would seem desireable, would it not? Either state that the "y" utility is a requirment for building SlimServer or use some other approach. Personally, I don't care which. As an aside, I also don't have "y" on my HP/UX nor Digital Unix systems. However, unlike my Solaris and OS X systems, I cannot claim those two systems to be typical development installs.
*** This bug has been marked as a duplicate of 4021 ***