compile of Ruby fails on Ubuntu

N

Navjeet Chabbewal

I recently upgraded my Ubuntu to Dapper. I am trying to compile ruby on
it. After running configure I edit the ext/Setup file and uncomment the
following lines:

digest
digest/md5
openssl
readline
stringio
zlib


and then I run make which fails with following message

Quote:
SETUP=ext/Setup
EXTOBJS=ext/extinit.o ext/digest/digest.a ext/digest/md5/md5.a
ext/openssl/openssl.a ext/stringio/stringio.a ext/zlib/zlib.a
EXTLIBS=-lssl -lcrypto -lz
making ruby
make[1]: Entering directory `/home/navjeet/ruby-1.8.4'
gcc -g -O2 -DRUBY_EXPORT -rdynamic -Wl,-export-dynamic -L. main.o
ext/extinit.o ext/digest/digest.a ext/digest/md5/md5.a
ext/openssl/openssl.a ext/stringio/stringio.a ext/zlib/zlib.a
-lruby-static -ldl -lcrypt -lm -lssl -lcrypto -lz -o ruby
ext/digest/md5/md5.a(md5init.o).data.rel+0x: undefined reference to
`rb_Digest_MD5_Init'
ext/digest/md5/md5.a(md5init.o).data.rel+0xc): undefined reference to
`rb_Digest_MD5_Update'
ext/digest/md5/md5.a(md5init.o).data.rel+0x10): undefined reference to
`rb_Digest_MD5_End'
ext/digest/md5/md5.a(md5init.o).data.rel+0x14): undefined reference to
`rb_Digest_MD5_Final'
ext/digest/md5/md5.a(md5init.o).data.rel+0x1: undefined reference to
`rb_Digest_MD5_Equal'
collect2: ld returned 1 exit status
make[1]: *** [ruby] Error 1
make[1]: Leaving directory `/home/navjeet/ruby-1.8.4'
make: *** [all] Error 2

What could be the source of this error? Do you think I may not have some
library installed or something else?

-Jeet
 
C

Cliff Cyphers

Navjeet said:
I recently upgraded my Ubuntu to Dapper. I am trying to compile ruby on
it. After running configure I edit the ext/Setup file and uncomment the
following lines:

digest
digest/md5
openssl
readline
stringio
zlib

Maybe you want to use --disable-FEATURE as options to configure.sh
instead of updating setup?
 
N

Navjeet Chabbewal

shawn said:
there are some libs that ubuntu requires. something about yaml and
something
else, dont remember.
i used this guide
http://weblog.freeopinion.org/articles/2005/11/17/setting-up-ruby-in-ubuntu

and it seemed to work.

That did not help.
any reason you are not using apt? i actually got ruby on dapper by
apt-get install ruby1.8
then made a symlink to /usr/bin/ruby

hope this helps

Well I did that finally which took care of ruby but now I have similar
9if not same) problem when running ruby setup.rb to build rubygems as
shown below:

/usr/local/lib/ruby/1.8/i686-linux/digest/md5.so:
/usr/local/lib/ruby/1.8/i686-linux/digest/md5.so: undefined symbol:
rb_Digest_MD5_Init - /usr/local/lib/ruby/1.8/i686-linux/digest/md5.so
(LoadError)
from
/usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
`require'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/package.rb:10
from
/usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
`require'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems/builder.rb:7
from
/usr/local/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:27:in
`require'
from /usr/local/lib/ruby/site_ruby/1.8/rubygems.rb:93:in
`manage_gems'
from /home/navjeet/rubygems-0.9.0/./post-install.rb:70:in
`install_sources'
from /home/navjeet/rubygems-0.9.0/./post-install.rb:81:in
`try_run_hook'
from setup.rb:577:in `run_hook'
from setup.rb:1315:in `exec_task_traverse'
from setup.rb:1168:in `exec_install'
from setup.rb:887:in `exec_install'
from setup.rb:705:in `invoke'
from setup.rb:674:in `invoke'
 
N

Navjeet Chabbewal

Cameron said:
I think if you just do "apt-get build-dep ruby" you should be able to
compile it.

cam

Cameron,


See my previous response about rubygems problem.
 
C

Cliff Cyphers

Navjeet said:
Cameron,


See my previous response about rubygems problem.
The above will install all dependencies (libs) that are required to
build ruby from source.
 
N

Navjeet Chabbewal

Cliff said:
The above will install all dependencies (libs) that are required to
build ruby from source.

Cliff,

The ruby has been installed now using apt-get, but similar issue is
there running ruby setup.rb in rubygems source code as I mention above.
 
C

Cam

Hey,
The ruby has been installed now using apt-get, but similar issue is
there running ruby setup.rb in rubygems source code as I mention above.

If i understand you correctly, you have installed the ubuntu packages
of ruby? In that case, the errors you are getting from setup.rb
indicate that it is trying to use the stuff that you compiled yourself
in /usr/local/lib/ ... maybe you should delete that stuff and try
again.

cam
 
N

Navjeet Chabbewal

Cameron said:
Hey,


If i understand you correctly, you have installed the ubuntu packages
of ruby? In that case, the errors you are getting from setup.rb
indicate that it is trying to use the stuff that you compiled yourself
in /usr/local/lib/ ... maybe you should delete that stuff and try
again.

cam

Well thanks for that clue Cameron. I did the ultimate, blew away
/user/local/lib/ruby and started with a fresh install using apt-get and
so far ruby, gems and rails are up and running.

Thanks to all who responded to my message.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,776
Messages
2,569,603
Members
45,190
Latest member
ClayE7480

Latest Threads

Top