Masashi Shimbo wrote:
> [...]
> I'd like to know if you have libxml_so.so in
> /opt/ruby-1.8.4/lib/ruby/gems/1.8/gems/libxml-ruby-0.3.8/ext/xml/
> at this point (i.e., after 'gem install libxml-ruby').
>
> In my Ubuntu system, the original gem erases that shared library file
> after 'make clean'.
Here's a transcript of the "plain" gem installation. Once
again I apologize for the length of this message!
$ sudo gem uninstall libxml-ruby
Password:
Successfully uninstalled libxml-ruby version 0.3.8
$ sudo gem install libxml-ruby
Need to update 1 gems from http://gems.rubyforge.org
.
complete
Building native extensions. This could take a while...
Makefile:116: warning: overriding commands for target
`/opt/ruby-1.8.4/lib/ruby/gems/1.8/gems/libxml-ruby-0.3.8/ext/xml'
Makefile:114: warning: ignoring old commands for target
`/opt/ruby-1.8.4/lib/ruby/gems/1.8/gems/libxml-ruby-0.3.8/ext/xml'
Makefile:116: warning: overriding commands for target
`/opt/ruby-1.8.4/lib/ruby/gems/1.8/gems/libxml-ruby-0.3.8/ext/xml'
Makefile:114: warning: ignoring old commands for target
`/opt/ruby-1.8.4/lib/ruby/gems/1.8/gems/libxml-ruby-0.3.8/ext/xml'
Makefile:116: warning: overriding commands for target
`/opt/ruby-1.8.4/lib/ruby/gems/1.8/gems/libxml-ruby-0.3.8/ext/xml'
Makefile:114: warning: ignoring old commands for target
`/opt/ruby-1.8.4/lib/ruby/gems/1.8/gems/libxml-ruby-0.3.8/ext/xml'
ruby extconf.rb install libxml-ruby
checking for socket() in -lsocket... no
checking for gethostbyname() in -lnsl... yes
checking for atan() in -lm... no
checking for atan() in -lm... yes
checking for inflate() in -lz... yes
checking for iconv_open() in -liconv... no
checking for iconv_open() in -lc... yes
checking for xmlParseDoc() in -lxml2... yes
checking for libxml/xmlversion.h... no
checking for libxml/xmlversion.h... yes
checking for xmlDocFormatDump() in -lxml2... yes
checking for docbCreateFileParserCtxt()... yes
creating extconf.h
creating Makefile
make
gcc -fPIC -g -O2 -Wall -I. -I/usr/include/libxml2 -I.
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux -I. -DHAVE_ZLIB_H
-DHAVE_DOCBCREATEFILEPARSERCTXT -c ruby_xml_parser_context.cgcc -fPIC
-g -O2 -Wall -I. -I/usr/include/libxml2 -I.
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux -I. -DHAVE_ZLIB_H
-DHAVE_DOCBCREATEFILEPARSERCTXT -c ruby_xml_sax_parser.c
gcc -fPIC -g -O2 -Wall -I. -I/usr/include/libxml2 -I.
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux -I. -DHAVE_ZLIB_H
-DHAVE_DOCBCREATEFILEPARSERCTXT -c ruby_xml_xpath.c
gcc -fPIC -g -O2 -Wall -I. -I/usr/include/libxml2 -I.
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux -I. -DHAVE_ZLIB_H
-DHAVE_DOCBCREATEFILEPARSERCTXT -c ruby_xml_schema.c
gcc -fPIC -g -O2 -Wall -I. -I/usr/include/libxml2 -I.
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux -I. -DHAVE_ZLIB_H
-DHAVE_DOCBCREATEFILEPARSERCTXT -c ruby_xml_ns.c
gcc -fPIC -g -O2 -Wall -I. -I/usr/include/libxml2 -I.
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux -I. -DHAVE_ZLIB_H
-DHAVE_DOCBCREATEFILEPARSERCTXT -c ruby_xml_document.c
gcc -fPIC -g -O2 -Wall -I. -I/usr/include/libxml2 -I.
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux -I. -DHAVE_ZLIB_H
-DHAVE_DOCBCREATEFILEPARSERCTXT -c ruby_xml_attr.c
gcc -fPIC -g -O2 -Wall -I. -I/usr/include/libxml2 -I.
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux -I. -DHAVE_ZLIB_H
-DHAVE_DOCBCREATEFILEPARSERCTXT -c ruby_xml_xpath_context.c
gcc -fPIC -g -O2 -Wall -I. -I/usr/include/libxml2 -I.
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux -I. -DHAVE_ZLIB_H
-DHAVE_DOCBCREATEFILEPARSERCTXT -c cbg.c
gcc -fPIC -g -O2 -Wall -I. -I/usr/include/libxml2 -I.
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux -I. -DHAVE_ZLIB_H
-DHAVE_DOCBCREATEFILEPARSERCTXT -c ruby_xml_node.c
gcc -fPIC -g -O2 -Wall -I. -I/usr/include/libxml2 -I.
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux -I. -DHAVE_ZLIB_H
-DHAVE_DOCBCREATEFILEPARSERCTXT -c ruby_xml_dtd.c
gcc -fPIC -g -O2 -Wall -I. -I/usr/include/libxml2 -I.
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux -I. -DHAVE_ZLIB_H
-DHAVE_DOCBCREATEFILEPARSERCTXT -c ruby_xml_node_set.c
gcc -fPIC -g -O2 -Wall -I. -I/usr/include/libxml2 -I.
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux -I. -DHAVE_ZLIB_H
-DHAVE_DOCBCREATEFILEPARSERCTXT -c ruby_xml_parser.c
gcc -fPIC -g -O2 -Wall -I. -I/usr/include/libxml2 -I.
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux -I. -DHAVE_ZLIB_H
-DHAVE_DOCBCREATEFILEPARSERCTXT -c ruby_xml_tree.c
gcc -fPIC -g -O2 -Wall -I. -I/usr/include/libxml2 -I.
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux -I. -DHAVE_ZLIB_H
-DHAVE_DOCBCREATEFILEPARSERCTXT -c libxml.c
gcc -fPIC -g -O2 -Wall -I. -I/usr/include/libxml2 -I.
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux -I. -DHAVE_ZLIB_H
-DHAVE_DOCBCREATEFILEPARSERCTXT -c ruby_xml_attribute.c
gcc -fPIC -g -O2 -Wall -I. -I/usr/include/libxml2 -I.
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux -I. -DHAVE_ZLIB_H
-DHAVE_DOCBCREATEFILEPARSERCTXT -c ruby_xml_xpointer_context.c
gcc -fPIC -g -O2 -Wall -I. -I/usr/include/libxml2 -I.
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux -I. -DHAVE_ZLIB_H
-DHAVE_DOCBCREATEFILEPARSERCTXT -c ruby_xml_input_cbg.c
gcc -fPIC -g -O2 -Wall -I. -I/usr/include/libxml2 -I.
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux -I. -DHAVE_ZLIB_H
-DHAVE_DOCBCREATEFILEPARSERCTXT -c ruby_xml_xinclude.c
gcc -fPIC -g -O2 -Wall -I. -I/usr/include/libxml2 -I.
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux
-I/opt/ruby-1.8.4/lib/ruby/1.8/x86_64-linux -I. -DHAVE_ZLIB_H
-DHAVE_DOCBCREATEFILEPARSERCTXT -c ruby_xml_xpointer.c
gcc -shared -rdynamic -Wl,-export-dynamic -L'/opt/ruby-1.8.4/lib'
-Wl,-R'/opt/ruby-1.8.4/lib' -L'/opt/ruby-1.8.4/lib'
-Wl,-R'/opt/ruby-1.8.4/lib' -o libxml_so.so ruby_xml_parser_context.o
ruby_xml_sax_parser.o ruby_xml_xpath.o ruby_xml_schema.o ruby_xml_ns.o
ruby_xml_document.o ruby_xml_attr.o ruby_xml_xpath_context.o cbg.o
ruby_xml_node.o ruby_xml_dtd.o ruby_xml_node_set.o ruby_xml_parser.o
ruby_xml_tree.o libxml.o ruby_xml_attribute.o
ruby_xml_xpointer_context.o ruby_xml_input_cbg.o ruby_xml_xinclude.o
ruby_xml_xpointer.o -lxml2 -lxml2 -lc -lz -lm -lnsl -ldl -lcrypt -lm -lc
make install
make: Nothing to be done for `install'.
make clean
Successfully installed libxml-ruby-0.3.8
Installing ri documentation for libxml-ruby-0.3.8...
Enclosing class/module 'mXML' for class Attribute not known
No definition for input_callbacks_register_input_callbacks
No definition for input_callbacks_add_scheme
No definition for input_callbacks_remove_scheme
Enclosing class/module 'mXML' for class Attribute not known
No definition for input_callbacks_register_input_callbacks
No definition for input_callbacks_add_scheme
No definition for input_callbacks_remove_scheme
Installing RDoc documentation for libxml-ruby-0.3.8...
Enclosing class/module 'mXML' for class Attribute not known
No definition for input_callbacks_register_input_callbacks
No definition for input_callbacks_add_scheme
No definition for input_callbacks_remove_scheme
Enclosing class/module 'mXML' for class Attribute not known
No definition for input_callbacks_register_input_callbacks
No definition for input_callbacks_add_scheme
No definition for input_callbacks_remove_scheme
$
-------------------------- Now check for .so ----------------
$ ls /opt/ruby-1.8.4/lib/ruby/gems/1.8/gems/libxml-ruby-0.3.8/ext/xml/
./ ruby_xml_attr.h ruby_xml_node_set.h
ruby_xml_tree.h
../ ruby_xml_attribute.c ruby_xml_ns.c
ruby_xml_xinclude.c
cbg.c ruby_xml_attribute.h ruby_xml_ns.h
ruby_xml_xinclude.h
extconf.h ruby_xml_document.c ruby_xml_parser.c
ruby_xml_xpath.c
extconf.rb ruby_xml_document.h ruby_xml_parser_context.c
ruby_xml_xpath_context.c
gem_make.out ruby_xml_dtd.c ruby_xml_parser_context.h
ruby_xml_xpath_context.h
libxml.c ruby_xml_dtd.h ruby_xml_parser.h
ruby_xml_xpath.h
libxml.h ruby_xml_input_cbg.c ruby_xml_sax_parser.c
ruby_xml_xpointer.c
libxml.rb ruby_xml_input_cbg.h ruby_xml_sax_parser.h
ruby_xml_xpointer_context.c
Makefile ruby_xml_node.c ruby_xml_schema.c
ruby_xml_xpointer_context.h
mkmf.log ruby_xml_node.h ruby_xml_schema.h
ruby_xml_xpointer.h
ruby_xml_attr.c ruby_xml_node_set.c ruby_xml_tree.c
sax_parser_callbacks.inc
-------------------------- Usage ----------------
This may be an unrelated issue, but here's two XML files I
use with libxml-ruby on Ubuntu and OS/X successfully:
$ wc *.xml
1229094 1370730 19273537 big.xml
1229 2466 42956 small.xml
1230323 1373196 19316493 total
On the patched and unpatched Centos version though this
happens:
>> doc = XML::Document.file("small.xml")
[...]
>> doc = XML::Document.file("big.xml")
(irb):5: [BUG] Segmentation fault
ruby 1.8.4 (2005-12-24) [x86_64-linux]
Aborted
-------------------------------------------------
Thanks,
Stu
--
Stuart Hungerford
ANUSF Data Intensive Projects
_______________________________________________
libxml-devel mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/libxml-devel