Summary: | lang/nml: Fails to link on i386 with lld: ld: error: relocation R_386_PC32 cannot be used against symbol BnnAdd; recompile with -fPIC | ||
---|---|---|---|
Product: | Ports & Packages | Reporter: | Ed Maste <emaste> |
Component: | Individual Port(s) | Assignee: | freebsd-ports-bugs (Nobody) <ports-bugs> |
Status: | Closed FIXED | ||
Severity: | Affects Many People | CC: | diizzy, mikael |
Priority: | --- | Keywords: | easy, needs-patch |
Version: | Latest | Flags: | koobs:
merge-quarterly?
|
Hardware: | i386 | ||
OS: | Any | ||
See Also: | https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=214864 |
Description
Ed Maste
![]() ![]() lld has been enabled as system linker for i386 on stable/12 in advance of 12.1 (as of a few minutes ago) It looks like this port is incorrectly marked BROKEN - it builds fine with BROKEN removed. (In reply to Ed Maste from comment #2) That is, is now incorrectly marked BROKEN. It was broken with LLD in the past, but either a port update or LLD update has addressed the issue. it's still broken for me (12.1 i386)
cc -O -I./bignum/h -I../../ocaml/byterun -fPIC -c -o nat_stubs.o nat_stubs.c
../../boot/ncamlrun ../../ocaml/tools/ocamlmklib -o nums bignum/o/KerN.o bignum/o/bnInit.o bignum/o/bnMult.o bignum/o/bnDivide.o bignum/o/bnCmp.o bignum/o/bzf.o bignum/o/bz.o nat_stubs.o
ld: error: relocation R_386_PC32 cannot be used against symbol BnnAdd; recompile with -fPIC
>>> defined in bignum/o/KerN.o
>>> referenced by bignum/o/KerN.o:(.text+0x409)
I haven't tried -current.
Ah, I tested on i386-current only - it could be that this will be solved in 12.2 with new Clang/LLVM. Does it build on 12.2 now? (In reply to Ed Maste from comment #6) It still broken on 12.2 i386: cc -O -I./bignum/h -I../../ocaml/byterun -fPIC -c -o nat_stubs.o nat_stubs.c ../../boot/ncamlrun ../../ocaml/tools/ocamlmklib -o nums bignum/o/KerN.o bignum/o/bnInit.o bignum/o/bnMult.o bignum/o/bnDivide.o bignum/o/bnCmp.o bignum/o/bzf.o bignum/o/bz.o nat_stubs.o ld: error: relocation R_386_PC32 cannot be used against symbol BnnAdd; recompile with -fPIC On 13 i386, the build fails with (no ld error): gmake[2]: Entering directory '/wrkdirs/usr/ports/lang/nml/work/nml-0.92/stdlib' ../boot/ncamlrun ../nmlo -nopervasives -c pervasives.ml sh: as: not found Remove block on 214864, ld.lld has been the system linker for some time now Probably time to remove this from the tree as it seems to be abandoned upstream (last release 2004/4/19) and doesn't appear to build on any platform at this point? I guess we can close this by now and remove it in the next BROKEN clean up? A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=5e6e5a45cde21367b3d95490cdce7dbd67beec9b commit 5e6e5a45cde21367b3d95490cdce7dbd67beec9b Author: Daniel Engberg <diizzy@FreeBSD.org> AuthorDate: 2021-09-29 07:38:25 +0000 Commit: Daniel Engberg <diizzy@FreeBSD.org> CommitDate: 2021-09-29 07:42:27 +0000 lang/nml: Mark as BROKEN, deprecate and set expiration date to 2021-12-31 Abandoned upstream, last release 2004-04-19 and doesn't compile Reference: PR 234720 PR: 234720 Reported by: emaste and mikael Approved by: arrowd (mentor) Differential Revision: https://reviews.freebsd.org/D32218 lang/nml/Makefile | 4 ++++ 1 file changed, 4 insertions(+) |