Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 230111 - dev-lang/ruby-1.8.6_p230 fails to compile due to undefined reference
Summary: dev-lang/ruby-1.8.6_p230 fails to compile due to undefined reference
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Development (show other bugs)
Hardware: All Linux
: High normal with 1 vote (vote)
Assignee: Gentoo Ruby Team
: 231054 (view as bug list)
Depends on:
Blocks: 225465
  Show dependency tree
Reported: 2008-06-29 23:32 UTC by Alexandre Rostovtsev (RETIRED)
Modified: 2008-07-15 18:10 UTC (History)
16 users (show)

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

complete build log (dev-lang:ruby-1.8.6_p230:20080629-232523.log,24.08 KB, text/plain)
2008-06-29 23:34 UTC, Alexandre Rostovtsev (RETIRED)

Note You need to log in before you can comment on or make changes to this bug.
Description Alexandre Rostovtsev (RETIRED) gentoo-dev 2008-06-29 23:32:20 UTC
dev-lang/ruby-1.8.6_p230 fails to compile due to undefined reference in parse.c:

# USE="berkdb cjk doc emacs gdbm ipv6 socks5 ssl threads tk" emerge ruby
i686-pc-linux-gnu-ar rcu libruby18-static.a array.o bignum.o class.o compar.o dir.o dln.o enum.o error.o eval.o file.o gc.o hash.o inits.o io.o marshal.o math.o numeric.o object.o pack.o parse.o process.o prec.o random.o range.o re.o regex.o ruby.o signal.o sprintf.o st.o string.o struct.o time.o util.o variable.o version.o  dmyext.o
i686-pc-linux-gnu-gcc -march=pentium-m -O2 -pipe -frename-registers -fno-strict-aliasing  -fPIC  -DRUBY_EXPORT -D_GNU_SOURCE=1  -L. -Wl,-O1 -rdynamic -Wl,-export-dynamic -Wl,-O1  main.o  libruby18-static.a -lpthread -ldl -lcrypt -lm   -o miniruby
libruby18-static.a(parse.o): In function `ruby_yyerror':
parse.c:(.text+0x32d1): undefined reference to `re_mbc_startpos'
parse.c:(.text+0x3303): undefined reference to `re_mbc_startpos'
collect2: ld returned 1 exit status
make: *** [miniruby] Error 1

# emerge --info
Portage 2.2_rc1 (default-linux/x86/2007.0/desktop, gcc-4.3.1, glibc-2.8_p20080602-r0, 2.6.25-gentoo-r4.6 i686)
System uname: Linux-2.6.25-gentoo-r4.6-i686-Intel-R-_Pentium-R-_M_processor_1.60GHz-with-glibc2.0
Timestamp of tree: Sun, 29 Jun 2008 22:31:01 +0000
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.4 [enabled]
app-shells/bash:     3.2_p39
dev-java/java-config: 1.3.7, 2.1.6
dev-lang/python:     2.4.4-r13, 2.5.2-r5
dev-python/pycrypto: 2.0.1-r6
dev-util/ccache:     2.4-r7
dev-util/confcache:  0.4.2-r1
sys-apps/baselayout: 2.0.0
sys-apps/openrc:     0.2.5
sys-devel/autoconf:  2.13, 2.62
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1-r1
sys-devel/binutils:  2.16.1-r3, 2.17-r2, 2.18-r2
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   2.2.4
virtual/os-headers:  2.6.25-r4
CFLAGS="-march=pentium-m -O2 -pipe -frename-registers"
Comment 1 Alexandre Rostovtsev (RETIRED) gentoo-dev 2008-06-29 23:34:14 UTC
Created attachment 158901 [details]
complete build log
Comment 2 Senuma Takahiko 2008-06-30 08:39:33 UTC
The same is here on ~amd64.
Disabling USE flag "cjk" will compile fine.
With this flag enabled, accompanied package oniguruma-2.5.9 preconfigures Ruby, making possibly wrong codes from the original ones.
Comment 3 Hans de Graaff gentoo-dev 2008-07-05 06:41:54 UTC
Indeed cjk seems to be broken due to incompatibilities between the new ruby 1.8.6 code and oniguruma 2.5.9. Since p230 is an in-between release anyway my suggestion is to wait until a newer release of ruby 1.8.6 is made (which should be soon).

At that point oniguruma might work again since some changes also got rolled back, or we may need a newer version of oniguruma at that point.
Comment 4 Carsten Lohrke (RETIRED) gentoo-dev 2008-07-07 16:24:06 UTC
*** Bug 231054 has been marked as a duplicate of this bug. ***
Comment 5 Hans de Graaff gentoo-dev 2008-07-15 18:10:25 UTC
I have just 'fixed' this by removing support for the cjk USE flag for ruby-1.8.6_p230. We'll need a newer version of oniguruma to appear that is compatible with the new 1.8.6 release, or perhaps patch the current oniguruma to work with the new 1.8.6 release. At least removing the USE flag will avoid problems for people who have the cjk USE flag set but don't actually need the support in ruby.

Given that p230 is an intermediate release with a number of problems (most notably a huge memory leak) it would be best to wait for the next 1.8.6 release (hopefully soon) and then try to fix oniguruma against that.