#45184: bash @4.3.26 does not build on Mac OS X 10.4 Tiger --------------------------+---------------------- Reporter: geoffdown@… | Owner: raimue@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 2.3.0 Resolution: invalid | Keywords: tiger Port: bash | --------------------------+---------------------- Changes (by ryandesign@…): * status: new => closed * resolution: => invalid Comment: Replying to [comment:4 geoffdown@…]:
I think I may have caused the problem by changing 'sh' to link to tcsh instead of bash.
Yup, that would certainly break everything; don't do that. /bin/sh needs to be bash.
Changing it back allowed bash to build - though I see that @4.3.26 has disappeared, so it is @4.3.25 that has installed.
The version available today is 4.3.27. If that's not the version you got, selfupdate and try again.
I was *upgrading* apple-gcc42 to the latest version, and that seems to be building ok as well.
Ok, I was just confused by you mentioning "upgrading apple-gcc42 from 4.0.1" since the apple-gcc42 port has never been at version "4.0.1". When it was originally added in 2007, the version was "5531"; today, the version is "5666.3".
I did try "sudo port selfupdate" before all this, but it seemed to hang. Should it take a long time?
You can run with the "-v" flag to learn more about what selfupdate is doing (i.e. "sudo port -v selfupdate"). If your computer is slow and/or there are lots of changes to download, it can take several minutes. If you really did have MacPorts 2.3.0 before and are therefore updating to 2.3.1, it will take several minutes longer than that to build the new version.
Is there any reason I can't rename /bin/bash and create a symlink from /bin/bash to /opt/local/bin/bash ? Or even move the binary to /bin/ ?
Replacing /bin/sh with a copy of bash installed by MacPorts might work. It might also cause problems. I can't guarantee that bash 4 from MacPorts is completely 100% backward compatible with bash 2 preinstalled on Tiger. Certainly all the scripts used as part of the operating system were tested with bash 2; there may be problem running them under bash 4. If you're willing to accept that risk, then after backing up your existing /bin/sh somewhere, your options are as you said to either make /bin/sh a symlink to /opt/local/bin/bash or to copy /opt/local/bin/bash to /bin/sh. Using a symlink has the problem that if you ever uninstall or deactivate bash in MacPorts, you system may stop working properly, up to and including no longer being able to boot up. Copying MacPorts bash to /bin/sh would thus be safer, with the caveat that you should re-copy it anytime you later update the MacPorts bash port if you want to continue to stay up to date. -- Ticket URL: <https://trac.macports.org/ticket/45184#comment:5> MacPorts <http://www.macports.org/> Ports system for OS X