Date: Sat, 12 Jan 2008 20:03:56 -0600 From: Stephen Montgomery-Smith <stephen@math.missouri.edu> To: Thomas-Martin Seck <tmseck-lists@netcologne.de> Cc: Garrett Cooper <youshi10@u.washington.edu>, freebsd-ports@freebsd.org Subject: Re: openoffice package requires libstdc++.so.6 Message-ID: <4789718C.7060400@math.missouri.edu> In-Reply-To: <200801130128.m0D1SlOR063239@hardy.tmseck.homedns.org> References: <200801130128.m0D1SlOR063239@hardy.tmseck.homedns.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Thomas-Martin Seck wrote: > * Garrett Cooper <youshi10@u.washington.edu> [gmane.os.freebsd.devel.ports]: > >>> Jason C. Wells wrote: >>>> The prebuilt package openoffice-2.3.1 requires libstdc++.so.6. >>>> FreeBSD 6.3 has libstdc++.so.5. >>>> I have always rolled my own and am unfamiliar with packages. This >>>> particular package would appear to have been built against a >>>> librart version that is not installed on FreeBSD-6. If I have >>>> somehow erred, please point out my error. >>>> Is this package buggy? >>>> Shouldn't packages link against /usr/lib/libstdc++.so and so >>>> follow the softlinks that the system provides? >>>> On my system: >>>> $ openoffice.org-2.3.1-scalc >>>> /libexec/ld-elf.so.1: Shared object "libstdc++.so.6" not found, >>>> required by "javaldx" >>>> /libexec/ld-elf.so.1: Shared object "libstdc++.so.6" not found, >>>> required by "pagein" >>>> /libexec/ld-elf.so.1: Shared object "libstdc++.so.6" not found, >>>> required by "soffice.bin" >>>> $ ls -la /usr/lib/libstdc++* >>>> -r--r--r-- 1 root wheel 1585324 Jan 11 05:55 /usr/lib/libstdc++.a >>>> lrwxr-xr-x 1 root wheel 14 Jan 11 05:55 /usr/lib/libstdc+ >>>> +.so -> libstdc++.so.5 >>>> -r--r--r-- 1 root wheel 803928 Jan 11 05:55 /usr/lib/libstdc+ >>>> +.so.5 >>>> -r--r--r-- 1 root wheel 1577098 Jan 11 05:55 /usr/lib/libstdc+ >>>> +_p.a >>>> Thanks, >>>> Jason >> >> Did you install OpenOffice from a package? libstdc++.so.6 comes with >> gcc-3.4+ by default, so why isn't your system finding it...? > > Well, because it's not part of the base system on 6.x and the OP does > not have the required gcc variant installed because it was not pulled in > as a dependency of the Ooo package. > > Currently USE_GCC only sets a build but not a runtime dependency. Thus > every package of a port that requires a non-default gcc runtime > environment (i.e. libstdc++ and/or libgfortran) lacks this dependency > information and is thus unusable. And as I said earlier in my (unfortunately top-posted) message, this could be easily fixed by something like perl -i.bak -lne \ 'print;print if \!/^\#/ && s/\bBUILD_DEPENDS/RUN_DEPENDS/g' \ /usr/ports/Mk/bsd.gcc.mk
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4789718C.7060400>