Building Ruby extensions on OS X Tiger

R

Richard Kilmer

Tony Arnold posted this on the Rails wiki:
_____

Mac OS X Tiger ships with Ruby 1.8.2 pre-installed. However,
rbconfig.rb needs to be edited if you want to build any gems. (from
Rich...not gems, native extensions)

Edit rbconfig.rb

sudo pico -w /usr/lib/ruby/1.8/powerpc-darwin8.0/rbconfig.rb
Now remove -arch i386 from the CFLAGS and LDFLAGS variables.

You will also need to change:
CONFIG["LIBRUBYARG_STATIC"] = "-l$(RUBY_SO_NAME)-static"
to:
CONFIG["LIBRUBYARG_STATIC"] = ""
_____


NOTE: This is only important if you are building native extensions
(not pure ruby ones)...but it does suck when you run into it...so its
worth fixing.

Wiki link: http://wiki.rubyonrails.com/rails/show/HowtoInstallOnOSXTiger

Chad is working on a gem that you can install which fixes this too.

-rich
 
C

Chad Fowler

Tony Arnold posted this on the Rails wiki:
_____

Mac OS X Tiger ships with Ruby 1.8.2 pre-installed. However,
rbconfig.rb needs to be edited if you want to build any gems. (from
Rich...not gems, native extensions)

Edit rbconfig.rb

sudo pico -w /usr/lib/ruby/1.8/powerpc-darwin8.0/rbconfig.rb
Now remove -arch i386 from the CFLAGS and LDFLAGS variables.

You will also need to change:
CONFIG["LIBRUBYARG_STATIC"] = "-l$(RUBY_SO_NAME)-static"
to:
CONFIG["LIBRUBYARG_STATIC"] = ""
_____

NOTE: This is only important if you are building native extensions
(not pure ruby ones)...but it does suck when you run into it...so its
worth fixing.

Wiki link: http://wiki.rubyonrails.com/rails/show/HowtoInstallOnOSXTiger

Chad is working on a gem that you can install which fixes this too.

-rich

sudo gem install fixrbconfig
sudo fixrbconfig

--

Chad Fowler
http://chadfowler.com
http://rubycentral.org
http://rubygarden.org
http://rubygems.rubyforge.org (over 300,000 gems served!)
 
P

Phil Tomson

Tony Arnold posted this on the Rails wiki:
_____

Mac OS X Tiger ships with Ruby 1.8.2 pre-installed. However,
rbconfig.rb needs to be edited if you want to build any gems. (from
Rich...not gems, native extensions)

Edit rbconfig.rb

sudo pico -w /usr/lib/ruby/1.8/powerpc-darwin8.0/rbconfig.rb
Now remove -arch i386 from the CFLAGS and LDFLAGS variables.

You will also need to change:
CONFIG["LIBRUBYARG_STATIC"] = "-l$(RUBY_SO_NAME)-static"
to:
CONFIG["LIBRUBYARG_STATIC"] = ""
_____

NOTE: This is only important if you are building native extensions
(not pure ruby ones)...but it does suck when you run into it...so its
worth fixing.

Wiki link: http://wiki.rubyonrails.com/rails/show/HowtoInstallOnOSXTiger

Chad is working on a gem that you can install which fixes this too.

-rich

sudo gem install fixrbconfig
sudo fixrbconfig

You are indeed on the cutting edge ;-)

Phil
 
N

nobu.nokada

Hi,

At Sat, 30 Apr 2005 09:35:22 +0900,
Richard Kilmer wrote in [ruby-talk:140540]:
Mac OS X Tiger ships with Ruby 1.8.2 pre-installed. However,
rbconfig.rb needs to be edited if you want to build any gems. (from
Rich...not gems, native extensions)

Edit rbconfig.rb

sudo pico -w /usr/lib/ruby/1.8/powerpc-darwin8.0/rbconfig.rb
Now remove -arch i386 from the CFLAGS and LDFLAGS variables.

You will also need to change:
CONFIG["LIBRUBYARG_STATIC"] = "-l$(RUBY_SO_NAME)-static"
to:
CONFIG["LIBRUBYARG_STATIC"] = ""
_____

ARCH_FLAG should be "-arch ppc" on darwin. As what is it
defined, and RUBY_SO_NAME?
 
C

Chad Fowler

Hi,

At Sat, 30 Apr 2005 09:35:22 +0900,
Richard Kilmer wrote in [ruby-talk:140540]:
Mac OS X Tiger ships with Ruby 1.8.2 pre-installed. However,
rbconfig.rb needs to be edited if you want to build any gems. (from
Rich...not gems, native extensions)

Edit rbconfig.rb

sudo pico -w /usr/lib/ruby/1.8/powerpc-darwin8.0/rbconfig.rb
Now remove -arch i386 from the CFLAGS and LDFLAGS variables.

You will also need to change:
CONFIG["LIBRUBYARG_STATIC"] = "-l$(RUBY_SO_NAME)-static"
to:
CONFIG["LIBRUBYARG_STATIC"] = ""
_____

ARCH_FLAG should be "-arch ppc" on darwin. As what is it
defined, and RUBY_SO_NAME?

CONFIG["ARCH_FLAG"] = ""
CONFIG["RUBY_SO_NAME"] = "$(RUBY_INSTALL_NAME)"

Should we update the rbconfig.rb again? KirinDave on irc also found
another problem with the RC_CFLAGS environment variable causing
problems with, for example, RubyInline.

I thought I might release another version of my fixer upper gem.

--

Chad Fowler
http://chadfowler.com
http://rubycentral.org
http://rubygarden.org
http://rubygems.rubyforge.org (over 300,000 gems served!)
 
N

nobu.nokada

Hi,

At Sun, 1 May 2005 11:09:13 +0900,
Chad Fowler wrote in [ruby-talk:140626]:
Mac OS X Tiger ships with Ruby 1.8.2 pre-installed. However,
rbconfig.rb needs to be edited if you want to build any gems. (from
Rich...not gems, native extensions)

Edit rbconfig.rb

sudo pico -w /usr/lib/ruby/1.8/powerpc-darwin8.0/rbconfig.rb
Now remove -arch i386 from the CFLAGS and LDFLAGS variables.

You will also need to change:
CONFIG["LIBRUBYARG_STATIC"] = "-l$(RUBY_SO_NAME)-static"
to:
CONFIG["LIBRUBYARG_STATIC"] = ""
_____

ARCH_FLAG should be "-arch ppc" on darwin. As what is it
defined, and RUBY_SO_NAME?

CONFIG["ARCH_FLAG"] = ""

From where has the flag come?
CONFIG["RUBY_SO_NAME"] = "$(RUBY_INSTALL_NAME)"

Do you have a problem at linking with the static library?
Should we update the rbconfig.rb again? KirinDave on irc also found
another problem with the RC_CFLAGS environment variable causing
problems with, for example, RubyInline.

For what is RC_CFLAGS used, and where is it set? I think ruby
never use it.
 
C

Chad Fowler

Hi,

At Sun, 1 May 2005 11:09:13 +0900,
Chad Fowler wrote in [ruby-talk:140626]:
Mac OS X Tiger ships with Ruby 1.8.2 pre-installed. However,
rbconfig.rb needs to be edited if you want to build any gems. (from
Rich...not gems, native extensions)

Edit rbconfig.rb

sudo pico -w /usr/lib/ruby/1.8/powerpc-darwin8.0/rbconfig.rb
Now remove -arch i386 from the CFLAGS and LDFLAGS variables.

You will also need to change:
CONFIG["LIBRUBYARG_STATIC"] = "-l$(RUBY_SO_NAME)-static"
to:
CONFIG["LIBRUBYARG_STATIC"] = ""
_____

ARCH_FLAG should be "-arch ppc" on darwin. As what is it
defined, and RUBY_SO_NAME?

CONFIG["ARCH_FLAG"] = ""

From where has the flag come?

rbconfig.rb
CONFIG["RUBY_SO_NAME"] = "$(RUBY_INSTALL_NAME)"

Do you have a problem at linking with the static library?

Haven't tried it.
For what is RC_CFLAGS used, and where is it set? I think ruby
never use it.

$ grep RC_CFLAG /usr/lib/ruby/1.8/powerpc-darwin8.0/rbconfig.rb

CONFIG["LDSHARED"] = "cc $(RC_CFLAGS) -dynamic -bundle -undefined
suppress -flat_namespace"
CONFIG["LIBRUBY_LDSHARED"] = "cc $(RC_CFLAGS) -dynamic -bundle
-undefined suppress -flat_namespace"

This is looking like a plain error. Maybe a typo? RC_CFLAGS appears
to be used in darwin to allow for customized CFLAG settings. Does
this make sense to anyone? Seems like it should be changed.

--

Chad Fowler
http://chadfowler.com
http://rubycentral.org
http://rubygarden.org
http://rubygems.rubyforge.org (over 300,000 gems served!)
 
N

nobu.nokada

Hi,

At Mon, 2 May 2005 03:18:10 +0900,
Chad Fowler wrote in [ruby-talk:140661]:
CONFIG["ARCH_FLAG"] = ""

From where has the flag come?
rbconfig.rb

This is looking like a plain error. Maybe a typo? RC_CFLAGS appears
to be used in darwin to allow for customized CFLAG settings. Does
this make sense to anyone? Seems like it should be changed.

Do you mean they are misconfiguration by Apple, but not a bug
of configure.in? Sorry for noise.
 
C

Chad Fowler

Hi,
=20
At Mon, 2 May 2005 03:18:10 +0900,
Chad Fowler wrote in [ruby-talk:140661]:
CONFIG["ARCH_FLAG"] =3D ""

From where has the flag come?
rbconfig.rb
=20
This is looking like a plain error. Maybe a typo? RC_CFLAGS appears
to be used in darwin to allow for customized CFLAG settings. Does
this make sense to anyone? Seems like it should be changed.
=20
Do you mean they are misconfiguration by Apple, but not a bug
of configure.in? Sorry for noise.


Sorry for the VERY delayed response. It is a misconfiguration by Apple.

--=20
Chad Fowler
http://chadfowler.com
http://rubycentral.org=20
http://rubygarden.org=20
http://rubygems.rubyforge.org (over 500,000 gems served!)
 

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

No members online now.

Forum statistics

Threads
473,982
Messages
2,570,190
Members
46,736
Latest member
zacharyharris

Latest Threads

Top