Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 582968 - dev-ruby/msgpack-0.7.4 RUBY_TARGET=ruby21 - undefined reference to `rb_num2int`
Summary: dev-ruby/msgpack-0.7.4 RUBY_TARGET=ruby21 - undefined reference to `rb_num2int`
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Ruby Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-05-14 07:30 UTC by Anton Kochkov
Modified: 2016-05-30 18:12 UTC (History)
1 user (show)

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


Attachments
full build log (build.log,11.31 KB, text/plain)
2016-05-14 07:31 UTC, Anton Kochkov
Details
emerge --info =msgpack-0.7.4 output (emerge_info_msgpack.log,17.25 KB, text/plain)
2016-05-22 09:12 UTC, Anton Kochkov
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Anton Kochkov 2016-05-14 07:30:35 UTC
factory_class.c: In function ‘Factory_register_type’:
factory_class.c:164:16: warning: implicit declaration of function ‘rb_num2int’ [-Wimplicit-function-declaration]
     ext_type = rb_num2int(argv[0]);
                ^
i686-pc-linux-gnu-gcc -I. -I/usr/include/ruby-2.1.0/i686-linux -I/usr/include/ruby-2.1.0/ruby/backward -I/usr/include/ruby-2.1.0 -I. -DHAVE_RUBY_ST_H -DHAVE_ST_H -DHAVE_RB_STR_REPLACE -DHAVE_RB_INTERN_STR -DHAVE_RB_STR_INTERN -DHAVE_RB_BLOCK_LAMBDA -DHAVE_RB_HASH_DUP -DHAVE_RB_HASH_CLEAR  -D_FILE_OFFSET_BITS=64  -fPIC -O2 -march=core2 -mfpmath=sse -mmmx -msse -msse2 -mssse3 -pipe -fno-strict-aliasing -fPIC -I.. -Wall -O3 -g -std=gnu99  -o unpacker_ext_registry.o -c unpacker_ext_registry.c
i686-pc-linux-gnu-gcc -I. -I/usr/include/ruby-2.1.0/i686-linux -I/usr/include/ruby-2.1.0/ruby/backward -I/usr/include/ruby-2.1.0 -I. -DHAVE_RUBY_ST_H -DHAVE_ST_H -DHAVE_RB_STR_REPLACE -DHAVE_RB_INTERN_STR -DHAVE_RB_STR_INTERN -DHAVE_RB_BLOCK_LAMBDA -DHAVE_RB_HASH_DUP -DHAVE_RB_HASH_CLEAR  -D_FILE_OFFSET_BITS=64  -fPIC -O2 -march=core2 -mfpmath=sse -mmmx -msse -msse2 -mssse3 -pipe -fno-strict-aliasing -fPIC -I.. -Wall -O3 -g -std=gnu99  -o packer_class.o -c packer_class.c
i686-pc-linux-gnu-gcc -I. -I/usr/include/ruby-2.1.0/i686-linux -I/usr/include/ruby-2.1.0/ruby/backward -I/usr/include/ruby-2.1.0 -I. -DHAVE_RUBY_ST_H -DHAVE_ST_H -DHAVE_RB_STR_REPLACE -DHAVE_RB_INTERN_STR -DHAVE_RB_STR_INTERN -DHAVE_RB_BLOCK_LAMBDA -DHAVE_RB_HASH_DUP -DHAVE_RB_HASH_CLEAR  -D_FILE_OFFSET_BITS=64  -fPIC -O2 -march=core2 -mfpmath=sse -mmmx -msse -msse2 -mssse3 -pipe -fno-strict-aliasing -fPIC -I.. -Wall -O3 -g -std=gnu99  -o buffer.o -c buffer.c
packer_class.c: In function ‘Packer_write_ext’:
packer_class.c:166:20: warning: implicit declaration of function ‘rb_num2int’ [-Wimplicit-function-declaration]
     int ext_type = rb_num2int(type);
                    ^
rm -f msgpack.so
i686-pc-linux-gnu-gcc -shared -o msgpack.so unpacker_class.o extension_value_class.o core_ext.o rbinit.o unpacker.o packer.o rmem.o packer_ext_registry.o buffer_class.o factory_class.o unpacker_ext_registry.o packer_class.o buffer.o -L. -L/usr/lib -L. -Wl,-O1 -Wl,--as-needed -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,--no-undefined    -lruby21  -lpthread -lgmp -ldl -lcrypt -lm   -lc
unpacker_class.o: In function `Unpacker_register_type':
/var/tmp/portage/dev-ruby/msgpack-0.7.4/work/ruby21/msgpack-0.7.4/ext/msgpack/unpacker_class.c:376: undefined reference to `rb_num2int'
factory_class.o: In function `Factory_register_type':
/var/tmp/portage/dev-ruby/msgpack-0.7.4/work/ruby21/msgpack-0.7.4/ext/msgpack/factory_class.c:164: undefined reference to `rb_num2int'
packer_class.o: In function `Packer_register_type':
/var/tmp/portage/dev-ruby/msgpack-0.7.4/work/ruby21/msgpack-0.7.4/ext/msgpack/packer_class.c:277: undefined reference to `rb_num2int'
packer_class.o: In function `Packer_write_ext':
/var/tmp/portage/dev-ruby/msgpack-0.7.4/work/ruby21/msgpack-0.7.4/ext/msgpack/packer_class.c:166: undefined reference to `rb_num2int'
collect2: error: ld returned 1 exit status
Makefile:232: recipe for target 'msgpack.so' failed
make: *** [msgpack.so] Error 1
make: Leaving directory '/var/tmp/portage/dev-ruby/msgpack-0.7.4/work/ruby21/msgpack-0.7.4/ext/msgpack'
Comment 1 Anton Kochkov 2016-05-14 07:31:13 UTC
Created attachment 434242 [details]
full build log
Comment 2 Tomáš Mózes 2016-05-14 19:59:10 UTC
Please post the output of emerge --info =msgpack-0.7.4. 

Have you tried versions >0.7.4?
Comment 3 Anton Kochkov 2016-05-22 09:12:55 UTC
Created attachment 434954 [details]
emerge --info =msgpack-0.7.4 output

No, error still the same.
Comment 4 Hans de Graaff gentoo-dev Security 2016-05-30 18:12:07 UTC
(In reply to Anton Kochkov from comment #3)

> No, error still the same.

Ah, this is an x86-specific bug (or perhaps any 32-bit architecture) that triggers our handling of -Wl,--no-undefined on there due to a difference in inlining or not.

This should now be fixed for msgpack-0.7.6 (and msgpack-0.7.4 since that is the last version with an x86 keyword).