Date: Tue, 23 Sep 2014 17:15:41 -0700 From: Justin Hibbits <jrh29@alumni.cwru.edu> To: Nathan Whitehorn <nwhitehorn@freebsd.org> Cc: FreeBSD PowerPC ML <freebsd-ppc@freebsd.org>, Mark Millard <markmi@dsl-only.net> Subject: Re: //lib/libm.so.5: could not read symbols: Bad value and /usr/bin/ld: : invalid DSO for symbol `sin@@FBSD_1.0' definition Message-ID: <CAHSQbTDfMqdHW2X%2Bt-m1FtnAGwzDVWuOt98EfpZwjPve2nnWYw@mail.gmail.com> In-Reply-To: <54220467.5070603@freebsd.org> References: <6FE3262D-7AC1-4A1A-B298-5DEABAE37750@dsl-only.net> <7BA54C8F-5B1C-4F8A-B0FD-E218A1D3E1F8@dsl-only.net> <54220467.5070603@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
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@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@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@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@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@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@freebsd.org mailing list >> http://lists.freebsd.org/mailman/listinfo/freebsd-ppc >> To unsubscribe, send any mail to "freebsd-ppc-unsubscribe@freebsd.org" >> > > _______________________________________________ > freebsd-ppc@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-ppc > To unsubscribe, send any mail to "freebsd-ppc-unsubscribe@freebsd.org"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAHSQbTDfMqdHW2X%2Bt-m1FtnAGwzDVWuOt98EfpZwjPve2nnWYw>