Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 497130 - dev-lang/ruby-2.1.0 with tcl-8.6*: tcltklib.o: In function `ip_cancel_eval_core': tcltklib.c:(.text+0x164f): undefined reference to `Tcl_CancelEval'
Summary: dev-lang/ruby-2.1.0 with tcl-8.6*: tcltklib.o: In function `ip_cancel_eval_co...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Development (show other bugs)
Hardware: All Linux
: Normal normal with 1 vote (vote)
Assignee: Gentoo Ruby Team
URL: https://bugs.ruby-lang.org/issues/8000
Whiteboard:
Keywords:
: 497128 498710 (view as bug list)
Depends on:
Blocks: tcltk-8.6
  Show dependency tree
 
Reported: 2014-01-05 11:08 UTC by jannis
Modified: 2016-06-20 18:39 UTC (History)
5 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,479.83 KB, text/x-log)
2014-01-05 11:12 UTC, jannis
Details
emerge --info (einfo,24.16 KB, text/plain)
2014-01-05 11:12 UTC, jannis
Details
ruby.patch (ruby.patch,4.63 KB, patch)
2016-02-01 05:10 UTC, Arfrever Frehtes Taifersar Arahesis
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description jannis 2014-01-05 11:08:45 UTC
dev-lang/ruby-2.1.0 fails to compile against tcl-8.6* with an linker error:
x86_64-pc-linux-gnu-gcc -shared -o ../../.ext/x86_64-linux/tcltklib.so stubs.o tcltklib.o -L. -L../.. -L/usr/lib64 -L. -Wl,-O1 -Wl,--as-needed -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,--no-undefined    -lruby21 -lX11 -lm -ldl  -L/usr/lib64 -Wl,-R/usr/lib64 -ltcl8.5 -lX11 -lm -ldl  -L/usr/lib64 -Wl,-R/usr/lib64 -ltk8.5 -lX11 -lm -ldl  -L/usr/lib64 -Wl,-R/usr/lib64 -ltcl8.5 -lX11 -lm -ldl  -lpthread -lgmp -ldl -lcrypt -lm   -lc
tcltklib.o: In function `ip_cancel_eval_core':
tcltklib.c:(.text+0x164f): undefined reference to `Tcl_CancelEval'
collect2: error: ld returned 1 exit status
Makefile:2052: recipe for target '../../.ext/x86_64-linux/tcltklib.so' failed
make[2]: *** [../../.ext/x86_64-linux/tcltklib.so] Error 1

Note that on my system the shared libraries for tcl-8.5 are still preserved since sci-geosciences/grass also fails to compile against tcl-8.6 (#451358)

Reproducible: Always
Comment 1 jannis 2014-01-05 11:12:31 UTC
Created attachment 367064 [details]
build.log
Comment 2 jannis 2014-01-05 11:12:50 UTC
Created attachment 367066 [details]
emerge --info
Comment 3 Lars Wendler (Polynomial-C) gentoo-dev 2014-01-05 11:13:20 UTC
*** Bug 497128 has been marked as a duplicate of this bug. ***
Comment 4 Iddo 2014-01-20 18:42:30 UTC
*** Bug 498710 has been marked as a duplicate of this bug. ***
Comment 5 Iddo 2014-01-20 19:19:19 UTC
Can confirm this is happening on ~amd64 here too.
Comment 6 Hans de Graaff gentoo-dev 2014-01-22 19:31:20 UTC
It seems that tcl/tk 8.6 is not yet supported by ruby. See URL for the upstream bug. I've adjusted the dependencies in dev-lang/ruby accordingly. I'll leave this bug open for now as a notice for the tcl/tk folks in Gentoo or until ruby upstream supports tcl/tk.
Comment 7 Hans de Graaff gentoo-dev 2015-07-07 09:17:05 UTC
It looks like upstream has now fixed this for the 2.1.x and 2.2.x series, but the fixes are not in a release yet.
Comment 8 Arfrever Frehtes Taifersar Arahesis 2016-02-01 05:10:37 UTC
Created attachment 424378 [details, diff]
ruby.patch

Problem is fixed in last versions in 2.1, 2.2, 2.3 branches.
I attach patch for ebuilds.
Comment 9 Hanno Boeck gentoo-dev 2016-06-18 16:50:08 UTC
This looks fixed, 2.1.9 is the latest stable version in Gentoo which should contain the upstream fix. Can we close this bug or is there anything left to do?
Comment 10 Arfrever Frehtes Taifersar Arahesis 2016-06-20 05:55:04 UTC
(In reply to Hanno Boeck from comment #9)

tk USE flag still must be restored. Currently ebuilds do not provide possibility of installing Ruby tk module. See patch in comment #8.
Comment 11 Hans de Graaff gentoo-dev 2016-06-20 18:39:35 UTC
Thanks for the patches. ruby 2.1.10, ruby 2.2.5, and ruby 2.3.1 now have tk support again.