Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Ruby > compile from source - how difficult?

Reply
Thread Tools

compile from source - how difficult?

 
 
Tom Cloyd
Guest
Posts: n/a
 
      07-18-2008
On a fresh install of Kubuntu Linux (ver. 8.04.01), I'm not having good
day trying to get ruby and rubygems back and functional.

The Ruby-lang. website recommends using the package manager to install
ruby, so I did that.

Then I installed rubygems 1.8 from the rubyforge tarball. I then
installed several gems successfully, but the one I really had to have -
webby - wouldn't install. I've not have this problem before, so it
doesn't seem likely that it's a webby problem.

I didn't know how to uninstall the rubygems 1.8 install. I simply went
to the adept package manager and installed rubygems from that.

But webby still won't install:

> $ sudo gem install webby
>
> [sudo] password for tomc:
> Building native extensions. This could take a while...
> ERROR: Error installing webby:
> ERROR: Failed to build gem native extension.
>
> /usr/bin/ruby1.8 extconf.rb install webby
> checking for main() in -lpthread... no
> *** extconf.rb failed ***
> Could not create Makefile due to some reason, probably lack of
> necessary libraries and/or headers. Check the mkmf.log file for more
> details. You may need configuration options.
>
> Provided configuration options:
> --with-opt-dir
> --without-opt-dir
> --with-opt-include
> --without-opt-include=${opt-dir}/include
> --with-opt-lib
> --without-opt-lib=${opt-dir}/lib
> --with-make-prog
> --without-make-prog
> --srcdir=.
> --curdir
> --ruby=/usr/bin/ruby1.8
> --with-pthreadlib
> --without-pthreadlib
>
>
>
> Gem files will remain installed in
> /usr/lib/ruby/gems/1.8/gems/eventmachine-0.12.0 for inspection.
> Results logged to
> /usr/lib/ruby/gems/1.8/gems/eventmachine-0.12.0/ext/gem_make.out
>


On the webby list, it was suggested that I install ruby from source.

Is that really the best idea? I developed modest pascal programs from my
own source code, years ago, but I have no idea how to compile ruby for
what I presume is C source, on Kubuntu.

What should I do? If going from source is the best idea, can anyone
point me to a resource which will bring me up to speed on how to do
this? (I'm looking for this resource, and may find it, but suggestions
are certainly welcome.)

Thanks!

t.


--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~
Tom Cloyd,
Bellingham, Washington, U.S.A: (360) 920-1226
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~

 
Reply With Quote
 
 
 
 
Martin DeMello
Guest
Posts: n/a
 
      07-18-2008
On Fri, Jul 18, 2008 at 3:34 PM, Tom Cloyd <(E-Mail Removed)> wrote:
> On a fresh install of Kubuntu Linux (ver. 8.04.01), I'm not having good day
> trying to get ruby and rubygems back and functional.


I got webby installed under Ubuntu 8.04 without having to compile
anything from source. I did face some other issues, though - see
http://markmail.org/message/apqjib2ftfr5dukk

Since your immediate problem appears to be pthreads-related, see if
you have the following installed:

libpthread-stubs0
libpthread-stubs0-dev

martin

 
Reply With Quote
 
 
 
 
Tom Cloyd
Guest
Posts: n/a
 
      07-18-2008
Martin DeMello wrote:
> On Fri, Jul 18, 2008 at 3:34 PM, Tom Cloyd <(E-Mail Removed)> wrote:
>> On a fresh install of Kubuntu Linux (ver. 8.04.01), I'm not having good day
>> trying to get ruby and rubygems back and functional.

>
> I got webby installed under Ubuntu 8.04 without having to compile
> anything from source. I did face some other issues, though - see
> http://markmail.org/message/apqjib2ftfr5dukk
>
> Since your immediate problem appears to be pthreads-related, see if
> you have the following installed:
>
> libpthread-stubs0
> libpthread-stubs0-dev
>
> martin
>
>


Here's what's installed, apparently -

$ locate libpthread
/lib/libpthread-2.7.so
/lib/libpthread.so.0
/lib/tls/i686/cmov/libpthread-2.7.so
/lib/tls/i686/cmov/libpthread.so.0

So, I went to Adept and found the two things (packages? modules? I
haven't a clue) an installed them.

Then...

$ sudo gem install webby
[sudo] password for tomc:
Building native extensions. This could take a while...
ERROR: Error installing webby:
ERROR: Failed to build gem native extension.

/usr/bin/ruby1.8 extconf.rb install webby
checking for main() in -lpthread... no
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers. Check the mkmf.log file for more
details. You may need configuration options.

Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/usr/bin/ruby1.8
--with-pthreadlib
--without-pthreadlib


Gem files will remain installed in
/usr/lib/ruby/gems/1.8/gems/eventmachine-0.12.0 for inspection.
Results logged to
/usr/lib/ruby/gems/1.8/gems/eventmachine-0.12.0/ext/gem_make.out


This was what was happening before.

Checking the mkmf.log file mentioned above, I find:

have_library: checking for main() in -lpthread... -------------------- no

"cc -o conftest -I. -I/usr/lib/ruby/1.8/i486-linux -I.
-fno-strict-aliasing -g -g -O2 -fPIC conftest.c -L"." -L"/usr/lib" -L.
-Wl,-Bsymbolic-functions -rdynamic -Wl,-export-dynamic
-lruby1.8-static -lpthread -lpthread -ldl -lcrypt -lm -lc"
/usr/bin/ld: crt1.o: No such file: No such file or directory
collect2: ld returned 1 exit status
checked program was:
/* begin */
1: /*top*/
2: int main() { return 0; }
3: int t() { void ((*volatile p)()); p = (void ((*)()))main; return 0; }
/* end */

"cc -o conftest -I. -I/usr/lib/ruby/1.8/i486-linux -I.
-fno-strict-aliasing -g -g -O2 -fPIC conftest.c -L"." -L"/usr/lib" -L.
-Wl,-Bsymbolic-functions -rdynamic -Wl,-export-dynamic
-lruby1.8-static -lpthread -lpthread -ldl -lcrypt -lm -lc"
/usr/bin/ld: crt1.o: No such file: No such file or directory
collect2: ld returned 1 exit status
checked program was:
/* begin */
1: /*top*/
2: int main() { return 0; }
3: int t() { main(); return 0; }
/* end */

--------------------

Then, checking
/usr/lib/ruby/gems/1.8/gems/eventmachine-0.12.0/ext/gem_make.out
(mentioned in the webby install effort console output, above), I find
simply a repetition of the error output printed to the console as a
result of the webby install attempt.

Sadly, I cannot make sense of any of this, so I'm very open to
suggestions at this point.

Thanks!

t.
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~
Tom Cloyd
Bellingham, Washington, U.S.A: (360) 920-1226
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~

 
Reply With Quote
 
Douglas A. Seifert
Guest
Posts: n/a
 
      07-19-2008
Tom Cloyd wrote:
> Martin DeMello wrote:
>> On Fri, Jul 18, 2008 at 3:34 PM, Tom Cloyd <(E-Mail Removed)> wrote:
>>> On a fresh install of Kubuntu Linux (ver. 8.04.01), I'm not having
>>> good day
>>> trying to get ruby and rubygems back and functional.

>>
>> I got webby installed under Ubuntu 8.04 without having to compile
>> anything from source. I did face some other issues, though - see
>> http://markmail.org/message/apqjib2ftfr5dukk
>>
>> Since your immediate problem appears to be pthreads-related, see if
>> you have the following installed:
>>
>> libpthread-stubs0
>> libpthread-stubs0-dev
>>
>> martin
>>
>>

>
> Here's what's installed, apparently -
>
> $ locate libpthread
> /lib/libpthread-2.7.so
> /lib/libpthread.so.0
> /lib/tls/i686/cmov/libpthread-2.7.so
> /lib/tls/i686/cmov/libpthread.so.0
>
> So, I went to Adept and found the two things (packages? modules? I
> haven't a clue) an installed them.
>
> Then...
>
> $ sudo gem install webby
> [sudo] password for tomc:
> Building native extensions. This could take a while...
> ERROR: Error installing webby:
> ERROR: Failed to build gem native extension.
>
> /usr/bin/ruby1.8 extconf.rb install webby
> checking for main() in -lpthread... no
> *** extconf.rb failed ***
> Could not create Makefile due to some reason, probably lack of
> necessary libraries and/or headers. Check the mkmf.log file for more
> details. You may need configuration options.
>
> Provided configuration options:
> --with-opt-dir
> --without-opt-dir
> --with-opt-include
> --without-opt-include=${opt-dir}/include
> --with-opt-lib
> --without-opt-lib=${opt-dir}/lib
> --with-make-prog
> --without-make-prog
> --srcdir=.
> --curdir
> --ruby=/usr/bin/ruby1.8
> --with-pthreadlib
> --without-pthreadlib
>
>
> Gem files will remain installed in
> /usr/lib/ruby/gems/1.8/gems/eventmachine-0.12.0 for inspection.
> Results logged to
> /usr/lib/ruby/gems/1.8/gems/eventmachine-0.12.0/ext/gem_make.out
>
>
> This was what was happening before.
>
> Checking the mkmf.log file mentioned above, I find:
>
> have_library: checking for main() in -lpthread... -------------------- no
>
> "cc -o conftest -I. -I/usr/lib/ruby/1.8/i486-linux -I.
> -fno-strict-aliasing -g -g -O2 -fPIC conftest.c -L"." -L"/usr/lib"
> -L. -Wl,-Bsymbolic-functions -rdynamic -Wl,-export-dynamic
> -lruby1.8-static -lpthread -lpthread -ldl -lcrypt -lm -lc"
> /usr/bin/ld: crt1.o: No such file: No such file or directory
> collect2: ld returned 1 exit status
> checked program was:
> /* begin */
> 1: /*top*/
> 2: int main() { return 0; }
> 3: int t() { void ((*volatile p)()); p = (void ((*)()))main; return 0; }
> /* end */
>
> "cc -o conftest -I. -I/usr/lib/ruby/1.8/i486-linux -I.
> -fno-strict-aliasing -g -g -O2 -fPIC conftest.c -L"." -L"/usr/lib"
> -L. -Wl,-Bsymbolic-functions -rdynamic -Wl,-export-dynamic
> -lruby1.8-static -lpthread -lpthread -ldl -lcrypt -lm -lc"
> /usr/bin/ld: crt1.o: No such file: No such file or directory
> collect2: ld returned 1 exit status
> checked program was:
> /* begin */
> 1: /*top*/
> 2: int main() { return 0; }
> 3: int t() { main(); return 0; }
> /* end */
>
> --------------------
>
> Then, checking
> /usr/lib/ruby/gems/1.8/gems/eventmachine-0.12.0/ext/gem_make.out
> (mentioned in the webby install effort console output, above), I find
> simply a repetition of the error output printed to the console as a
> result of the webby install attempt.
>
> Sadly, I cannot make sense of any of this, so I'm very open to
> suggestions at this point.
>
> Thanks!
>
> t.

On ubuntu, to compile anything, you should install the build-essential
package:

$ sudo apt-get install build-essential

You may also have to install the ruby1.8-dev package as well:

$ sudo apt-get install ruby1.8-dev

Good luck. When compiling gems, you usually will need dev version of
any library that the gem has a dependency on.

-Doug Seifert


 
Reply With Quote
 
Tom Cloyd
Guest
Posts: n/a
 
      07-19-2008
Douglas A. Seifert wrote:
> Tom Cloyd wrote:
>> Martin DeMello wrote:
>>> On Fri, Jul 18, 2008 at 3:34 PM, Tom Cloyd <(E-Mail Removed)> wrote:
>>>> On a fresh install of Kubuntu Linux (ver. 8.04.01), I'm not having
>>>> good day
>>>> trying to get ruby and rubygems back and functional.
>>>
>>> I got webby installed under Ubuntu 8.04 without having to compile
>>> anything from source. I did face some other issues, though - see
>>> http://markmail.org/message/apqjib2ftfr5dukk
>>>
>>> Since your immediate problem appears to be pthreads-related, see if
>>> you have the following installed:
>>>
>>> libpthread-stubs0
>>> libpthread-stubs0-dev
>>>
>>> martin
>>>
>>>

>>
>> Here's what's installed, apparently -
>>
>> $ locate libpthread
>> /lib/libpthread-2.7.so
>> /lib/libpthread.so.0
>> /lib/tls/i686/cmov/libpthread-2.7.so
>> /lib/tls/i686/cmov/libpthread.so.0
>>
>> So, I went to Adept and found the two things (packages? modules? I
>> haven't a clue) an installed them.
>>
>> Then...
>>
>> $ sudo gem install webby
>> [sudo] password for tomc:
>> Building native extensions. This could take a while...
>> ERROR: Error installing webby:
>> ERROR: Failed to build gem native extension.
>>
>> /usr/bin/ruby1.8 extconf.rb install webby
>> checking for main() in -lpthread... no
>> *** extconf.rb failed ***
>> Could not create Makefile due to some reason, probably lack of
>> necessary libraries and/or headers. Check the mkmf.log file for more
>> details. You may need configuration options.
>>
>> Provided configuration options:
>> --with-opt-dir
>> --without-opt-dir
>> --with-opt-include
>> --without-opt-include=${opt-dir}/include
>> --with-opt-lib
>> --without-opt-lib=${opt-dir}/lib
>> --with-make-prog
>> --without-make-prog
>> --srcdir=.
>> --curdir
>> --ruby=/usr/bin/ruby1.8
>> --with-pthreadlib
>> --without-pthreadlib
>>
>>
>> Gem files will remain installed in
>> /usr/lib/ruby/gems/1.8/gems/eventmachine-0.12.0 for inspection.
>> Results logged to
>> /usr/lib/ruby/gems/1.8/gems/eventmachine-0.12.0/ext/gem_make.out
>>
>>
>> This was what was happening before.
>>
>> Checking the mkmf.log file mentioned above, I find:
>>
>> have_library: checking for main() in -lpthread... -------------------- no
>>
>> "cc -o conftest -I. -I/usr/lib/ruby/1.8/i486-linux -I.
>> -fno-strict-aliasing -g -g -O2 -fPIC conftest.c -L"." -L"/usr/lib"
>> -L. -Wl,-Bsymbolic-functions -rdynamic -Wl,-export-dynamic
>> -lruby1.8-static -lpthread -lpthread -ldl -lcrypt -lm -lc"
>> /usr/bin/ld: crt1.o: No such file: No such file or directory
>> collect2: ld returned 1 exit status
>> checked program was:
>> /* begin */
>> 1: /*top*/
>> 2: int main() { return 0; }
>> 3: int t() { void ((*volatile p)()); p = (void ((*)()))main; return 0; }
>> /* end */
>>
>> "cc -o conftest -I. -I/usr/lib/ruby/1.8/i486-linux -I.
>> -fno-strict-aliasing -g -g -O2 -fPIC conftest.c -L"." -L"/usr/lib"
>> -L. -Wl,-Bsymbolic-functions -rdynamic -Wl,-export-dynamic
>> -lruby1.8-static -lpthread -lpthread -ldl -lcrypt -lm -lc"
>> /usr/bin/ld: crt1.o: No such file: No such file or directory
>> collect2: ld returned 1 exit status
>> checked program was:
>> /* begin */
>> 1: /*top*/
>> 2: int main() { return 0; }
>> 3: int t() { main(); return 0; }
>> /* end */
>>
>> --------------------
>>
>> Then, checking
>> /usr/lib/ruby/gems/1.8/gems/eventmachine-0.12.0/ext/gem_make.out
>> (mentioned in the webby install effort console output, above), I find
>> simply a repetition of the error output printed to the console as a
>> result of the webby install attempt.
>>
>> Sadly, I cannot make sense of any of this, so I'm very open to
>> suggestions at this point.
>>
>> Thanks!
>>
>> t.

> On ubuntu, to compile anything, you should install the build-essential
> package:
>
> $ sudo apt-get install build-essential
>
> You may also have to install the ruby1.8-dev package as well:
>
> $ sudo apt-get install ruby1.8-dev
>
> Good luck. When compiling gems, you usually will need dev version of
> any library that the gem has a dependency on.
>
> -Doug Seifert
>
>
>


Thanks, Doug. I'll probably give this a try. Since what I have now isn't
working too well. New adventures in Ruby/Kubuntu, for the ever hopeful,
and increasingly desperate! ~t.

--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~
Tom Cloyd, MS MA, LMHC - Private practice Psychotherapist
Bellingham, Washington, U.S.A: (360) 920-1226
<< http://www.velocityreviews.com/forums/(E-Mail Removed) >> (email)
<< TomCloyd.com >> (website & psychotherapy weblog)
<< sleightmind.wordpress.com >> (mental health issues weblog)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~

 
Reply With Quote
 
Kyle Schmitt
Guest
Posts: n/a
 
      07-19-2008
On Fri, Jul 18, 2008 at 9:13 PM, Tom Cloyd <(E-Mail Removed)> wrote:
> Thanks, Doug. I'll probably give this a try. Since what I have now isn't
> working too well. New adventures in Ruby/Kubuntu, for the ever hopeful, and
> increasingly desperate! ~t.


Tom,
I've never compiled ruby, or much of anything, for ubuntu
specifically, but I've had to build modern ruby package for work since
some of our boxes run (very very very) old versions of linux, and I've
had to build ruby for my irix box since there are no stock packages of
it. It's not the _most_ straight forward build, but it's still pretty
easy. Take it slow, and read that little README in the tarball, it
tells you everything.

You've got very little to worry about!

--Kyle

 
Reply With Quote
 
Marc Heiler
Guest
Posts: n/a
 
      07-19-2008
> It's not the _most_ straight forward build, but it's still
> pretty easy.


On a belated note I still wonder if anyone has managed to
compily ruby statically and made it work. When I dig into which
extensions I want to add, it is openssl or something else that
seems to "act up"
--
Posted via http://www.ruby-forum.com/.

 
Reply With Quote
 
Tom Cloyd
Guest
Posts: n/a
 
      07-20-2008
Marc Heiler wrote:
>> It's not the _most_ straight forward build, but it's still
>> pretty easy.

>
> On a belated note I still wonder if anyone has managed to
> compily ruby statically and made it work. When I dig into which
> extensions I want to add, it is openssl or something else that
> seems to "act up"


I'm happy to report that the help of Michael Guterl, of the Webby list,
I've just successfully compiled Ruby from source (with added
libraries/extensions/ or whatever they were: zlib1g-dev /
libreadline5-dev / openssl) installed it, then installed Rubygems (which
had been giving me real headaches), and then webby.

Haven't used it yet, but this is the farthest I've gotten on this in 4
days. The Kubuntu packages weren't installing well for me. This solved
the problem (so far).

Now I'm off to go study what I just did. Couldn't have done it without
Michael's patient and expert coaching. I have the complete list of
commands required if anyone wants them.

Tom


--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~
Tom Cloyd, MS MA, LMHC - Private practice Psychotherapist
Bellingham, Washington, U.S.A: (360) 920-1226
<< (E-Mail Removed) >> (email)
<< TomCloyd.com >> (website & psychotherapy weblog)
<< sleightmind.wordpress.com >> (mental health issues weblog)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Re: How include a large array? Edward A. Falk C Programming 1 04-04-2013 08:07 PM
compile directive for conditional compile for Java 1.4 versus Java 5 timjowers Java 7 02-02-2011 12:08 AM
How to compile the following source code in VC6// I have error inVC++6 but compile ok in GCC fAnSKyer C++ 2 06-07-2009 07:57 AM
Compile versus not compile (VS 2005)?? stupid48@gmail.com ASP .Net 1 04-11-2008 08:24 PM
cant compile on linux system.cant compile on cant compile onlinux system. Nagaraj C++ 1 03-01-2007 11:18 AM



Advertisments