ports/79397: news/inn fails to build nnrpd under RELEASE-4.11
and perl v5.8.6
Anton Berezin
tobez at tobez.org
Fri Apr 8 05:06:34 PDT 2005
On Fri, Apr 08, 2005 at 07:21:51AM -0400, c0ldbyte wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On Fri, 8 Apr 2005, Dmitry Pryanishnikov wrote:
>
> >
> >Hello!
> >
> >I've tried to install fresh 4.11-RELEASE, lang/perl5, use.perl port -
> >similar problem, news/inn can't buld nnrpd:
> >
> >cc -rpath=/usr/lib:/usr/local/lib -o nnrpd article.o cache.o group.o
> >commands.o line.o list.o misc.o newnews.o nnrpd.o perl.o perm.o post.o
> >python.o sasl_config.o tls.o track.o
> >/usr/ports/news/inn/work/inn-2.4.1/history/libinnhist.a
> >/usr/ports/news/inn/work/inn-2.4.1/storage/libstorage.a
> >/usr/ports/news/inn/work/inn-2.4.1/lib/libinn.a -L/usr/lib -lssl
> >-lcrypto /usr/ports/news/inn/work/inn-2.4.1/lib/perl.o
> >-Wl,-R/usr/local/lib/perl5/5.6.2/mach/CORE -Wl,-E -L/usr/local/lib
> >/usr/local/lib/perl5/5.6.2/mach/auto/DynaLoader/DynaLoader.a
> >-L/usr/local/lib/perl5/5.6.2/mach/CORE -lperl -lm -lcrypt -lutil
> >/usr/local/lib/perl5/5.6.2/mach/auto/DynaLoader/DynaLoader.a(DynaLoader.o):
> >In function `SaveError':
> >DynaLoader.o(.text+0x1a6): undefined reference to `Perl_vmess'
> >gmake[1]: *** [nnrpd] Error 1
> >
> >So it looks that neither perl 5.6 nor perl 5.8 can't be used together
> >with inn under 4.11-RELEASE. Pretty weird ;(
> >
> >Sincerely, Dmitry
> >
>
> Yeah its been that way for quite a while. The INN-2.4.2 source has been
> out for a quite a while now and not updated in the ports and Ive just been
> patiently waiting for it just for thought of it might fix some of the
> things that has it going bad right now. INN-CURRENT compiles fine and if
> Im correct that was one I tried before the release of 2.4.2 SO! hopefully
> we will some something soon in the effect of a fix & a update.
Please see a recent update of exim for a fix hint. Briefly: for correct
perl embedding -Wl,-R/usr/local/lib/perl5/${PERL_VERSION}/mach/CORE is
necessary, but -rpath=/usr/lib:/usr/local/lib above leads to the final
rpath being
/usr/lib:/usr/local/lib:/usr/local/lib/perl5/${PERL_VERSION}/mach/CORE
So libperl.so from the base system perl gets picked first. Even when
-rpath gets moved after -Wl,-R..., the problem still remains, since
-rpath takes precedence. The proper fix will mean both moving -rpath
further in the line _and_ replacing it with -Wl,-rpath, so they get the
same precedence.
\Anton.
--
The moronity of the universe is a monotonically increasing function. --
Jarkko Hietaniemi
More information about the freebsd-perl
mailing list