Ticket #4125 (closed defect: fixed)
[with patch, postitve review] Build breaks entirely or pulls in non-standard libraries with fink and macports
| Reported by: | dphilp | Owned by: | mabshoff |
|---|---|---|---|
| Priority: | minor | Milestone: | sage-3.1.3 |
| Component: | build | Keywords: | |
| Cc: | dphilp | Work issues: | |
| Report Upstream: | Reviewers: | ||
| Authors: | Merged in: | ||
| Dependencies: | Stopgaps: |
Description
The Sage build process pulls in non-standard libraries if they are easily found. Fink and MacPorts? have a habit of making their libraries easily found, because they fiddle with $PATH, etc. This sometimes means that the build fails, or works, but the resulting product is broken.
The fix is simple: move /sw and /opt/local during the build process. However, this is not at all obvious the first time. This script runs a simple test to check whether fink or ports are likely to interfere, and gives a useful error message.
#!/bin/bash
# Try to find ports automatically.
PORTS_PATH=`which port`
# Try to find fink automatically.
FINK_PATH=`which fink`
if [ "$PORTS_PATH" -o "$FINK_PATH" ] ; then
echo "Found either MacPorts or Fink in your path, which often prevents Sage from compiling."
if [ "$SAGE_COMPILE_DESPITE_PORTS_AND_FINK" ] ; then
echo "Continuing because SAGE_COMPILE_DESPITE_PORTS_AND_FINK is set."
else
echo "If you want to want to compile, you should rename /opt/local and /sw"
echo "during the build process. (Once Sage is built, you can move them to"
echo "their original location.)"
exit 1
fi
fi
Attachments
Change History
comment:1 Changed 5 years ago by mabshoff
- Summary changed from Build breaks entirely or pulls in non-standard libraries with fink and macports to [with patch, needs review] Build breaks entirely or pulls in non-standard libraries with fink and macports
- Milestone set to sage-3.1.2
comment:2 Changed 5 years ago by rlm
- Summary changed from [with patch, needs review] Build breaks entirely or pulls in non-standard libraries with fink and macports to [with patch, positive review] Build breaks entirely or pulls in non-standard libraries with fink and macports
Looks good to me!
comment:3 Changed 5 years ago by mabshoff
- Status changed from new to closed
- Resolution set to fixed
Merged in Sage 3.1.2.rc4
comment:4 Changed 5 years ago by mhampton
This doesn't work for me: I don't have macports or fink and it kills my build.
comment:5 follow-up: ↓ 6 Changed 5 years ago by GeorgSWeber
- Status changed from closed to reopened
- Summary changed from [with patch, positive review] Build breaks entirely or pulls in non-standard libraries with fink and macports to [with patch, negative review, reopened] Build breaks entirely or pulls in non-standard libraries with fink and macports
- Resolution fixed deleted
- Milestone changed from sage-3.1.2 to sage-3.1.3
Negative review, please revert the patch.
It breaks age builds that otherwise went fine, thus is a "false negative", e.g. for mhampton as reported above, or for David Harvey, as reported in the sage-devel discussion "macports" on Oct. 5th., see there for more (negative) opinions.
On the other hand, the patch might has become superfluous by patch 4127, but that should be confirmed by others.
If not, probably it is best to enhance 4127 until that one works as desired.
So please revert the patch of this ticket and then close the ticket as "wont", or better, as a "doublette" to 4127.
comment:6 in reply to: ↑ 5 Changed 5 years ago by mabshoff
- Status changed from reopened to closed
- Resolution set to fixed
- Summary changed from [with patch, negative review, reopened] Build breaks entirely or pulls in non-standard libraries with fink and macports to [with patch, postitve review] Build breaks entirely or pulls in non-standard libraries with fink and macports
Replying to GeorgSWeber:
Negative review, please revert the patch.
It breaks age builds that otherwise went fine, thus is a "false negative", e.g. for mhampton as reported above, or for David Harvey, as reported in the sage-devel discussion "macports" on Oct. 5th., see there for more (negative) opinions.
I do not care. This ticket resolves numerous problems where in the end after *much* debugging it turned out that either MacPorts? or Fink was at fault.
On the other hand, the patch might has become superfluous by patch 4127, but that should be confirmed by others.
If not, probably it is best to enhance 4127 until that one works as desired.
So please revert the patch of this ticket and then close the ticket as "wont", or better, as a "doublette" to 4127.
This patch will not be reverted.
Cheers,
Michael

