--- libfame.la --- /bin/sh ../libtool --mode=link cc -O2 -pipe -fstack-protector -fno-strict-aliasing -DHAS_BSWAP -Wall -fexpensive-optimizations -funroll-loops -ffast-math -fomit-frame-pointer -DHAS_MMX -Wl,-znotext -fstack-protector -fuse-ld=bfd -o libfame.la -rpath /usr/local/lib -release 0.9 -version-info 1:0:0 fame.lo cpuflags.lo fame_profile_mpeg.lo fame_profile_mpeg1.lo fame_profile_mpeg4_simple.lo fame_profile_mpeg4_shape.lo fame_profile_stats.lo fame_encoder_mpeg.lo fame_decoder_mpeg.lo fame_syntax_mpeg1.lo fame_syntax_mpeg4.lo fame_shape.lo fame_rate_simple.lo fame_rate_1param.lo fame_rate.lo fame_monitor.lo fame_motion.lo fame_motion_none.lo fame_motion_fourstep.lo fame_motion_pmvfast.lo fame_malloc.lo -lm rm -fr .libs/libfame.la .libs/libfame.* .libs/libfame-0.9.* cc -shared fame.lo cpuflags.lo fame_profile_mpeg.lo fame_profile_mpeg1.lo fame_profile_mpeg4_simple.lo fame_profile_mpeg4_shape.lo fame_profile_stats.lo fame_encoder_mpeg.lo fame_decoder_mpeg.lo fame_syntax_mpeg1.lo fame_syntax_mpeg4.lo fame_shape.lo fame_rate_simple.lo fame_rate_1param.lo fame_rate.lo fame_monitor.lo fame_motion.lo fame_motion_none.lo fame_motion_fourstep.lo fame_motion_pmvfast.lo fame_malloc.lo -lm -lc -Wl,-soname -Wl,libfame-0.9.so.1 -o .libs/libfame-0.9.so.1.0.0 /usr/bin/ld: error: can't create dynamic relocation R_386_32 against symbol: _mmx_1 in readonly segment; recompile object files with -fPIC >>> defined in fame.lo >>> referenced by fame_encoder_mpeg.c >>> fame_encoder_mpeg.lo:(mpeg_encode_intra_mb) Note this occurs with this change to the Makefile: diff --git a/multimedia/libfame/Makefile b/multimedia/libfame/Makefile index c704e0b3e081..25fc1d105cfe 100644 --- a/multimedia/libfame/Makefile +++ b/multimedia/libfame/Makefile @@ -15,6 +15,9 @@ INSTALL_TARGET= install-strip USES= libtool USE_LDCONFIG= yes +LDFLAGS+= ${LDFLAGS_${ARCH}} +LDFLAGS_i386= -Wl,-znotext + OPTIONS_DEFINE= MMX OPTIONS_DEFAULT=MMX It appears libtool in libfame does not pass the LDFLAGS option through to the link invocation.
Created attachment 197181 [details] Fix LLD on i386 Tested inside poudriere by mv'ing /usr/bin/ld.lld to /usr/bin/ld and compiling
Created attachment 197182 [details] Fix LLD on i386
Patch works for me
A commit references this bug: Author: riggs Date: Sun Oct 7 17:31:14 UTC 2018 New revision: 481465 URL: https://svnweb.freebsd.org/changeset/ports/481465 Log: Fix build on i386 with lld as the system linker PR: 231431 Submitted by: emaste, patch by ndowens@yahoo.com Reviewed by: emaste MFH: 2018Q4 Changes: head/multimedia/libfame/Makefile
A commit references this bug: Author: riggs Date: Sun Oct 7 17:33:59 UTC 2018 New revision: 481466 URL: https://svnweb.freebsd.org/changeset/ports/481466 Log: MFH: r481465 Fix build on i386 with lld as the system linker PR: 231431 Submitted by: emaste, patch by ndowens@yahoo.com Reviewed by: emaste Approved by: ports-secteam (riggs) Changes: _U branches/2018Q4/ branches/2018Q4/multimedia/libfame/Makefile