//lib/libm.so.5: could not read symbols: Bad value and /usr/bin/ld: : invalid DSO for symbol `sin@@FBSD_1.0' definition
Justin Hibbits
jrh29 at alumni.cwru.edu
Wed Sep 24 00:15:44 UTC 2014
Actually it's an issue with the port. The toolchain guys made ld more
strict, requiring all libraries to be specified on the command line,
rather than following the DT_NEEDED links. There is a whole host of
ports that have the problem of missing -lm. Some have been fixed, but
many more remain.
- Justin
On Tue, Sep 23, 2014 at 4:38 PM, Nathan Whitehorn
<nwhitehorn at freebsd.org> wrote:
> You might want to ask the people over on freebsd-toolchain about this. It
> looks like some issue with binutils.
> -Nathan
>
>
> On 09/23/14 15:53, Mark Millard wrote:
>>
>> For 10.1-BETA2 I used the MANIFEST and *.txz files with bsdinstall to make
>> a powerpc/GENERIC SSD where I did not rebuild the world or kernel but did
>> attempt portmaster my usual ports. No WITH_DEBUG= or other such added. But
>> WRKDIRPREFIX=(path not listed here) present.
>>
>> It still got the:
>>
>> /usr/bin/ld: : invalid DSO for symbol `sin@@FBSD_1.0' definition
>> //lib/libm.so.5: could not read symbols: Bad value
>> *** [fractals] Error code 1
>>
>> So even the standard way of building distributions has the problem for
>> powerpc/powerpc64.
>>
>>
>> uname -a output:
>>
>> FreeBSD FBSDG4S0 10.1-BETA2 FreeBSD 10.1-BETA2 #0 r271848: Fri Sep 19
>> 03:54:33 UTC 2014
>> root at releng1.nyi.freebsd.org:/usr/obj/powerpc.powerpc/usr/src/sys/GENERIC
>> powerpc
>>
>>
>>
>>
>> It would appear that
>> .../graphics/freeglut/work/freeglut-2.8.1/configure.ac generation of
>> progs/demos/Fractals/Makefile via:
>>
>> # Generate output.
>> AC_CONFIG_FILES([
>> Makefile
>> doc/Makefile
>> include/GL/Makefile
>> include/Makefile
>> progs/Makefile
>> progs/demos/CallbackMaker/Makefile
>> progs/demos/Fractals/Makefile
>> progs/demos/Fractals_random/Makefile
>> progs/demos/Lorenz/Makefile
>> progs/demos/Makefile
>> progs/demos/One/Makefile
>> progs/demos/shapes/Makefile
>> progs/demos/smooth_opengl3/Makefile
>> progs/demos/spaceball/Makefile
>> progs/demos/subwin/Makefile
>> src/Makefile
>> ])
>> AC_OUTPUT
>>
>> needs to not only have the produced progs/demos/Fractals/Makefile contain:
>>
>> LIBM = -lm
>>
>> (which it does) but to put LIBM to use by effectively adding $(LIBM) to:
>>
>> LIBS = -lXi -lXrandr -lXxf86vm
>>
>> or some other way of having -lm show up in the link command. (Other things
>> may need similar -l<?>'s.)
>>
>> If true then the problem is not in/with libm.so.5 itself.
>>
>>
>> My guess is that
>> .../graphics/freeglut/work/freeglut-2.8.1/progs/demos/Fractals/Makefile.am
>> should have:
>>
>> fractals_LDADD = ../../../src/lib at LIBRARY@.la $(GL_LIBS) $(LIBM)
>>
>> (I added the $(LIBM).)
>>
>> If so it would appear that pre-configure: in
>> /usr/ports/graphics/freeglut/Makefile might use something like:
>>
>> @${REINPLACE_CMD} -e "s|\$(GL_LIBS)|$(GL_LIBS) $(LIBM)|g" \
>> ${WRKSRC}/progs/demos/Fractals/Makefile.am
>>
>> (Again: There may be more than just Fractals and libm.so.5 involved
>> overall.)
>>
>> Or maybe a patch file for progs/demos/Fractals/Makefile.am could be set
>> up.
>>
>>
>>
>>
>>
>>
>>
>>
>> ===
>> Mark Millard
>> markmi at dsl-only.net
>>
>> On Sep 18, 2014, at 12:02 AM, Mark Millard <markmi at dsl-only.net> wrote:
>>
>> For 10.1-??? I've been getting:
>>
>> /usr/bin/ld: : invalid DSO for symbol `sin@@FBSD_1.0' definition
>> //lib/libm.so.5: could not read symbols: Bad value
>> *** [fractals] Error code 1
>>
>> make[6]: stopped in
>> /usr/obj/portswork/usr/ports/graphics/freeglut/work/freeglut-2.8.1/progs/demos/Fractals
>>
>> when I attempt to portmaster xscreensaver. (The rest of the ports I try to
>> build work fine, including all their dependencies. If xscreensaver finished
>> it would be about 409 ports involved in all.)
>>
>> I now note it to the list because I've now tried on on powerpc/GENERIC and
>> powerpc64/GENERIC64 with and without /etc/make.conf having:
>>
>> WITH_DEBUG_FILES=
>> WITHOUT_CLANG=
>> WITH_DEBUG=
>>
>> [WRKDIRPREFIX=(path not listed here) always present]
>>
>> when I buildworld kernel and use portmaster for the ports.
>>
>>
>> It appears that no matter what style of build on a PowerMac under either
>> powerpc/GENERIC or powerpc64/GENERIC64 /lib/libm.so.5 ends up with this
>> problem (or the ld checks for invalid DSO's end up wrong --or both).
>>
>>
>> I first noticed this with 10.1-PRERELEASE
>>
>> FreeBSD FBSDG4S0 10.1-PRERELEASE FreeBSD 10.1-PRERELEASE #0 r271215: Sat
>> Sep 6 23:56:15 PDT 2014 root at FBSDG4S0:/usr/obj/usr/src/sys/GENERIC
>> powerpc
>>
>> I can not claim just what was the last prior working case I had with
>> 10.0-STABLE but all those were "as distributed" installs instead of personal
>> "buildworld kernel" based on a source updates. For 10.1-??? I've been
>> experimenting with source based tracking/building, mostly building on
>> Quad-core PowerMac G5s (booted with either GENERIC based or GENERIC64 based
>> worlds/kernels, up to DDB/GDB being added or not). Here GENERIC and
>> GENERIC64 were not updated at all.
>>
>> It has continued with the likes of
>>
>> FreeBSD FBSDG4S1 10.1-BETA1 FreeBSD 10.1-BETA1 #1 r271610M: Wed Sep 17
>> 21:47:20 PDT 2014 root at FBSDG4S1:/usr/obj/usr/src/sys/GENERIC powerpc
>>
>> and its GENERIC64 variant. (M in r271610M because of DDB and GDB options
>> added to GENERIC and GENERIC64.)
>>
>>
>> ===
>> Mark Millard
>> markmi at dsl-only.net
>>
>>
>> _______________________________________________
>> freebsd-ppc at freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-ppc
>> To unsubscribe, send any mail to "freebsd-ppc-unsubscribe at freebsd.org"
>>
>
> _______________________________________________
> freebsd-ppc at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-ppc
> To unsubscribe, send any mail to "freebsd-ppc-unsubscribe at freebsd.org"
More information about the freebsd-ppc
mailing list