#12963 closed defect (fixed)
PolyBoRi links against system -lboost_unit_test_framework
Reported by: | jdemeyer | Owned by: | tbd |
---|---|---|---|
Priority: | blocker | Milestone: | sage-5.0.1 |
Component: | packages: standard | Keywords: | |
Cc: | AlexanderDreyer | Merged in: | sage-5.0.1.rc0 |
Authors: | Jeroen Demeyer | Reviewers: | Alexander Dreyer |
Report Upstream: | Fixed upstream, in a later stable release. | Work issues: | |
Branch: | Commit: | ||
Dependencies: | Stopgaps: |
Description (last modified by )
As noted on sage-support, the sage-5.0 binary sage-5.0-linux-32bit-fedora_release_16_verne_-i686-Linux.tar.gz
requires the boost library libboost_unit_test_framework
at runtime, since the binary was built on a machine with that library available. PolyBoRi? checks for -lboost_unit_test_framework
and links against it if available.
This is because of the PolyBoRi? upgrade to version 0.8.1. The older PolyBoRi? in sage-4.8 did not do this.
There are two solutions:
- Fix PolyBoRi? not to link against
-lboost_unit_test_framework
when SAGE_FAT_BINARY=yes. - Add the boost library to Sage (currently, only the boost headers are installed).
The following spkg implements the first solution: http://boxen.math.washington.edu/home/jdemeyer/spkg/polybori-0.8.1.p2.spkg
Binaries for testing: http://boxen.math.washington.edu/home/buildbot/binaries/sage/5.0.1.rc0/
Attachments (1)
Change History (19)
comment:1 Changed 8 years ago by
- Description modified (diff)
comment:2 Changed 8 years ago by
comment:3 Changed 8 years ago by
The full boost package is close to 50 MB in size. So I can imagine some people being unhappy about this.
comment:4 Changed 8 years ago by
- Description modified (diff)
- Milestone changed from sage-5.1 to sage-5.0.1
comment:5 Changed 8 years ago by
- Status changed from new to needs_review
comment:6 Changed 8 years ago by
- Description modified (diff)
comment:7 Changed 8 years ago by
- Cc AlexanderDreyer added
- Report Upstream changed from N/A to Fixed upstream, in a later stable release.
- Reviewers set to Alexander Dreyer
The diff looks sane. If it installs and tests well, I'll give a positive review soon. Note that upcoming PolyBoRi 0.8.2 will only links the tests to boost_test. Since test executable are not installed, the problem should not persist then.
comment:8 Changed 8 years ago by
- Status changed from needs_review to positive_review
make ptestlong
succeeded, so positive review.
comment:9 Changed 8 years ago by
My system boost library got upgraded (1.46 -> 1.48), and then polybori broke.
Irrespective of however many times I recompiled polybori, ldd showed that libpolybori-0.8.1.so.0.0.0 was still linked agaist libboost_unit_test_framework-1_46*. Installing this spkg works, and now libpolybori-0.8.1.so.0.0.0 is linked against the new boost.
comment:10 follow-up: ↓ 11 Changed 8 years ago by
The new spkg here only changes things for binary versions of Sage (i.e. when SAGE_FAT_BINARY=yes
). If you're using Sage on your own computer, not intending to distribute it, I don't think it's a problem that the system Boost library gets linked.
comment:11 in reply to: ↑ 10 Changed 8 years ago by
Replying to jdemeyer:
The new spkg here only changes things for binary versions of Sage (i.e. when
SAGE_FAT_BINARY=yes
). If you're using Sage on your own computer, not intending to distribute it, I don't think it's a problem that the system Boost library gets linked.
Well, the point is that this spkg works while the one already present doesn't. I recompiled polybori several times, and I have no idea how it kept on relinking against boost-1.46 when it is not even present in my system. Using this spkg actually did the right thing and linked it against the installed boost-1.48.
comment:12 Changed 8 years ago by
This SPKG gives weird linker errors (as in, ld
quits with nonzero exit status) on my multiarch Debian system. Here's a diff of my build log for p1 and p3 (#13040): http://wstein.org/home/keshav/files/polybori-log.diff.xz
comment:13 Changed 8 years ago by
I'm not sure, but I would suspect, that the error were introduced by p3. Do the ld errors occur in with p2?
comment:14 follow-up: ↓ 15 Changed 8 years ago by
Huh, you're right. Weird...
Diff between output for p1 and p2: http://wstein.org/home/keshav/files/polybori-log.2.diff.xz
comment:15 in reply to: ↑ 14 Changed 8 years ago by
Replying to kini:
Huh, you're right. Weird...
Diff between output for p1 and p2: http://wstein.org/home/keshav/files/polybori-log.2.diff.xz
Looking closer, the linker errors were intended, but they should be suppressed of course. Unfortunately, the patch from #13040 reverted this. I have suggested an alternative patch there.Looking closer, the linker errory were intended, but they should be suppressed of course. Unfortunately, the patch from #13040 reverted this. I have suggested an alternative patch there.
comment:16 Changed 8 years ago by
(Sorry for doublets.)
comment:17 Changed 8 years ago by
- Merged in set to sage-5.0.1
- Resolution set to fixed
- Status changed from positive_review to closed
comment:18 Changed 8 years ago by
- Merged in changed from sage-5.0.1 to sage-5.0.1.rc0
I'd be in favor of adding the missing bits of boost. Its a great library and we should make more use of it if anything.