pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: pkg/28296: x11/ruby-tcltklib uses wrong DEPENDS relational operator, etc.



Thanks for your problem report.

First, I'm working on whole ruby package's framework now. 

In message <20041113222100.DA0FC2520FF%narn.netbsd.org@localhost>
        on Sat, 13 Nov 2004 22:21:00 +0000 (UTC),
        "Greg A. Woods" <woods%weird.com@localhost> wrote:
> >Description:
> 
>       lang/ruby won't build when tcl-8.4.6nb5 is already installed
>       because x11/ruby-tcltklib won't build because it needs tcl-8.3.4
>       and tk-8.3.4 and yet it's DEPENDS settings use the ">="
>       relational operator instead of "=" as they should.
You are right.

>       Note also that this "extconf.rb" script doesn't exit with a
>       non-zero exit code when it fails leading to even further
>       confusion and problems.
Because "extconf.rb" has diffrent policy from "configure" script; its
main purpose is using in Ruby distribution's source tree and build
available extention libraries without error.  Anyway, I'll add some
work around in tne new framework.

>       So why does ruby have so much trouble with tcl/tk 8.4.* and with
>       the threat of the threads library especially since tk 8.4.* does
>       not _require_ linking against any threads library?!?!?
It isn't really the problem of tcl/tk 8.4 but ruby package's has
problem (or some lack) about handling of pthread library. 

>       However since this extconf.rb script ignores LDFLAGS from
>       CONFIGURE_ENV and the Makefile it generates also ignores LDFLAGS
>       from BUILD_ENV the right linker flags are not passed through
>       when building the shared library resulting in a failure to find
>       the X11.6 library:
...
>       17:56 [5552] $ ldd work/ruby-1.6.8/ext/tcltklib/*.so     
>       work/ruby-1.6.8/ext/tcltklib/tcltklib.so:
>                -lcrypt.0 => /usr/lib/libcrypt.so.0
>                -lm.0 => /usr/lib/libm.so.0
>                -lruby.16 => /usr/pkg/lib/libruby.so.16
>                -ltk84.1 => /usr/pkg/lib/libtk84.so.1
>                -ltcl84.1 => /usr/pkg/lib/libtcl84.so.1
>                -lX11.6 => not found
Do you use diffrent path, X11BASE?  I couldn't reproduce such
situation on NetBSD 1.6.2/i386 machine.

> +post-configure:
> +     ${MV} ${WRKSRC}/Makefile ${WRKSRC}/Makefile.in
> +     ${SED} 's/^DLDFLAGS = /DLDFLAGS = \$${LDFLAGS}/' < 
> ${WRKSRC}/Makefile.in > ${WRKSRC}/Makefile
> +
Can you specify what was need to passed by LDFLAGS?

-- 
Takahiro Kambe <taca%back-street.net@localhost>



Home | Main Index | Thread Index | Old Index