Re: [Pkg-tcltk-devel] Bug#590126: rcmdr: FTBFS on mips{, el}: Error : package 'tcltk' could not be loaded
On 31 July 2010 at 14:35, Arnaud Patard (Rtp) wrote:
| Sergei Golovan <sgolovan@nes.ru> writes:
| Hi,
|
| > On Sat, Jul 31, 2010 at 8:49 AM, Shane McDonald
| > <mcdonald.shane@gmail.com> wrote:
| >>
| >> Mips and mipsel definitely have Tcl/Tk.
| >>
| >> Investigating a little further, I tried building rcmdr on a mipsel
| >> system with tcl8.5 and tk8.5 present, but it still gave the same
| >> errors that you saw. But maybe it needs r-base to have been compiled
| >> with them present? Just wild speculation, I really don't know
| >> anything about these packages.
| >
| > I've looked through the config.log after the ./configure run (for r-base) and
| > found the following error message during testing for Tcl/Tk usability:
| >
| > configure:32106: checking whether compiling/linking Tcl/Tk code works
| > configure:32144: gcc -std=gnu99 -o conftest -g -O2 -fpic
| > -I/usr/include/tcl8.5 -I/usr/include/tcl8.5 conftest.c -ldl -lm
| > -L/usr/lib -ltcl8.5 -L/usr/lib -ltk8.5 -lX11 -lXss -lXext >&5
| > /usr/bin/ld: non-dynamic relocations refer to dynamic symbol Tk_Init
| > /usr/bin/ld: failed to set dynamic section sizes: Bad value
| > collect2: ld returned 1 exit status
| > configure:32144: $? = 1
| > configure: failed program was:
| >
| > (the failing program is attached). It seems that r-base hit bug
| > #519006 (see [1]). It's a bug in gcc-4.4, and it's unlikely that
| > Tcl/Tk itself can do something to it.
|
| yeah, r-base is hitting this bug. As a _workaround_, you can patch the
| r-base package with the joined patch. It'll disable the '-g' flag when
| running the configure test. With that, the tcltk.so lib is generated
| (and thus the tcl/tk deps are there too). Please note that I've not
| tested if the R tcl/tk stuff is working, I've only checked that the lib
| was built.
Thanks for the patch (and the upstream maintainer for configure / m4 is
CC'ed). I will prepare a new r-base upload for Debian.
Any idea why tcltk dies on mips when -g is present? Is that being
addressed on on mips or in tcl/tk?
Dirk
| Arnaud
|
|
| ----------------------------------------------------------------------
| Index: r-base-2.11.1/m4/R.m4
| ===================================================================
| --- r-base-2.11.1.orig/m4/R.m4 2010-07-31 10:21:47.000000000 +0000
| +++ r-base-2.11.1/m4/R.m4 2010-07-31 10:33:12.000000000 +0000
| @@ -2426,8 +2426,10 @@
| [r_cv_tcltk_works],
| [AC_LANG_PUSH(C)
| r_save_CPPFLAGS="${CPPFLAGS}"
| +r_save_CFLAGS="${CFLAGS}"
| r_save_LIBS="${LIBS}"
| CPPFLAGS="${CPPFLAGS} ${TCLTK_CPPFLAGS}"
| +CFLAGS="`echo ${CFLAGS}|sed -e 's!-g!!'`"
| LIBS="${LIBS} ${TCLTK_LIBS}"
| AC_LINK_IFELSE([AC_LANG_PROGRAM(
| [[#include <tcl.h>
| @@ -2439,6 +2441,7 @@
| r_cv_tcltk_works=yes,
| r_cv_tcltk_works=no)
| CPPFLAGS="${r_save_CPPFLAGS}"
| +CFLAGS="${r_save_CFLAGS}"
| LIBS="${r_save_LIBS}"
| AC_LANG_POP(C)])
| ])# _R_TCLTK_WORKS
--
Dirk Eddelbuettel | edd@debian.org | http://dirk.eddelbuettel.com
Reply to: