/////////////////////////////////////////////////////////////////////////// *Ruby One-Click Installer for OSX* http://rubyosx.com /////////////////////////////////////////////////////////////////////////// Rubyforge Project Page: http://rubyforge.org/projects/rubyosx Current Packages in the Ruby One-Click-Installer for OSX * Ruby 1.8.6 * SQLite 3.4.0 * Mongrel 1.0.1 * Ruby/LDAP 0.9.7 * Ragel State Machine Compiler 5.22 * GNU Readline 5.2 * Rubygems 0.9.4 * Gem: sqlite3-ruby (1.2.1) * Gem: daemons (1.0.6) * Gem: fastthread (1.0) * Gem: gem_plugin (0.2.2) * Gem: rake (0.7.3) * Gem: cgi_multipart_eof_fix (2.1) * Gem: sources (0.0.1) The current version of RubyOSX is compiled without support of Tcl/Tk. Please drop us a mail, if you want to see Tcl/Tk support included in the Package. We need your compiling-support in this case. +please get in touch with us, if you compiled for other and/or older versions of Mac OS!+ the current sources for rubyosx are available as ZIPfile from http://rubyosx.rubyforge.org/rubyosx-sources.zip Packages were compiled on i386 and PPC machines with the following OSX versions * 10.4 UB: 10.4.10 i386, 10.4.10 PPC * 10.3 PPC: 10.3.3 PPC G4 --------------------------------------------------------------------------- * 10.0-10.2: if you have a 10.0, 10.1 or 10.2 OSX installed and equipped with xcode, you can help out! please send a mail to parasew (at) 5uper.net if you want to donate your old OSX CD set (10.0-10.2), please send it to 5uper.net "RubyOSX" MQ MuseumsQuartier Vienna Museumsplatz 1 1070 Vienna, Austria, Europe --------------------------------------------------------------------------- On 10.3 we needed to compile autoconf 2.58 before Ruby would compile. autoconf was configured with --prefix=/usr to overwrite the older autoconf on the system. ./configure --prefix=/usr && make && make install *Detailed compile settings* Ruby has some makefile issues, so setting the compile prefix to '/usr/local' is mandatory! [GNU Readline] 5.2 ftp://ftp.cwru.edu/pub/bash/c.tar.gz # ./configure --prefix=/usr/local && make && make install [SQLite 3] 3.4.0 http://sqlite.org/sqlite-3.4.0.tar.g # ./configure --prefix=/usr/local --with-readline-dir=/usr/local --disable-tcl && make && make install [Ruby] 1.8.6 (2007-03-13 patchlevel 0) ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.6.tar.gz test the compiled ruby by watching the compile output and running the runner.rb after successful compiling ruby. ('ruby runner.rb' from the '/test' directory in the source) +for the 10.4 Tiger Package+ patch configure.in and compile on the two architectures independently. use lipo to stick together the files to an Universal Binary (UB) http://rubyosx.rubyforge.org/configure.in.patch +PPC+ # ./configure --prefix=/usr/local --enable-shared --enable-pthread --enable-fat-binary=ppc --enable-install-doc --without-tk --with-readline-dir=/usr/local && make && make install && make install-doc +i386+ # ./configure --prefix=/usr/local --enable-shared --enable-pthread --enable-fat-binary=i386 --enable-install-doc --without-tk --with-readline-dir=/usr/local && make && make install && make install-doc +for the 10.3 Panther Package+ # ./configure --prefix=/usr/local --enable-shared --enable-pthread --enable-install-doc --without-tk --with-readline-dir=/usr/local && make && make install && make install-doc +for the 10.0, 10.1 and 10.2 Cheetah, Puma, Jaguar Package+ # ./configure --prefix=/usr/local --enable-shared --enable-pthread --enable-install-doc --without-tk --with-readline-dir=/usr/local && make && make install && make install-doc [Ruby/LDAP] 0.9.7 http://downloads.sourceforge.net/ruby-ldap/ruby-ldap-0.9.7.tar.gz openSSL and openLDAP are needed for this part. # ruby extconf.rb && make && make install [Ragel State Machine Compiler] 5.22 http://www.cs.queensu.ca/~thurston/ragel/ragel-5.22.tar.gz # ./configure --prefix=/usr/local && make && make install on 10.3, the configure-script had problems, complaining about a missing table of contents in some archive (.a) files. running 'ranlib' solved this issue. ld: archive: ../common/common.a has no table of contents, add one with ranlib(1) (can't load from it) make[1]: *** [ragel] Error 1 make: *** [ragel] Error 2 # cd common # ranlib common.a # cd redfsm # ranlib redfsm.a [RubyGems] 0.9.4 http://rubyforge.org/frs/download.php/17190/rubygems-0.9.4.tgz # ruby setup.rb make sure the right ruby does the job! check with 'which ruby' +GEMS+ [sqlite3-ruby] 1.2.1 http://rubyforge.org/frs/download.php/17097/sqlite3-ruby-1.2.1.tar.gz # gem install sqlite3-ruby [Mongrel] 1.0.1 http://rubyforge.org/frs/download.php/16719/mongrel-1.0.1.gem gem install mongrel --include-dependencies Mongrel-Dependencies: daemons fastthread gem_plugin rake cgi_multipart_eof_fix *LIPO Action* here is a list of the files, that needed to be lipo'd to get the 10.4 UB Package: lib/ruby/site_ruby/1.8/universal-darwin8/ldap.bundle lib/ruby/gems/1.8/gems/sqlite3-ruby-1.2.1/lib/sqlite3_api.bundle lib/ruby/gems/1.8/gems/sqlite3-ruby-1.2.1/ext/sqlite3_api/sqlite3_api_wrap.o lib/ruby/gems/1.8/gems/sqlite3-ruby-1.2.1/ext/sqlite3_api/sqlite3_api.bundle lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/http11.bundle lib/ruby/gems/1.8/gems/mongrel-1.0.1/ext/http11/tst_search.o lib/ruby/gems/1.8/gems/mongrel-1.0.1/ext/http11/tst_insert.o lib/ruby/gems/1.8/gems/mongrel-1.0.1/ext/http11/tst_init.o lib/ruby/gems/1.8/gems/mongrel-1.0.1/ext/http11/tst_grow_node_free_list.o lib/ruby/gems/1.8/gems/mongrel-1.0.1/ext/http11/tst_delete.o lib/ruby/gems/1.8/gems/mongrel-1.0.1/ext/http11/tst_cleanup.o lib/ruby/gems/1.8/gems/mongrel-1.0.1/ext/http11/http11_parser.o lib/ruby/gems/1.8/gems/mongrel-1.0.1/ext/http11/http11.o lib/ruby/gems/1.8/gems/mongrel-1.0.1/ext/http11/http11.bundle lib/ruby/gems/1.8/gems/fastthread-1.0/lib/fastthread.bundle lib/ruby/gems/1.8/gems/fastthread-1.0/ext/fastthread/fastthread.o lib/ruby/gems/1.8/gems/fastthread-1.0/ext/fastthread/fastthread.bundle lib/ruby/1.8/universal-darwin8/zlib.bundle lib/ruby/1.8/universal-darwin8/thread.bundle lib/ruby/1.8/universal-darwin8/syslog.bundle lib/ruby/1.8/universal-darwin8/syck.bundle lib/ruby/1.8/universal-darwin8/strscan.bundle lib/ruby/1.8/universal-darwin8/stringio.bundle lib/ruby/1.8/universal-darwin8/socket.bundle lib/ruby/1.8/universal-darwin8/sdbm.bundle lib/ruby/1.8/universal-darwin8/readline.bundle lib/ruby/1.8/universal-darwin8/racc/cparse.bundle lib/ruby/1.8/universal-darwin8/pty.bundle lib/ruby/1.8/universal-darwin8/openssl.bundle lib/ruby/1.8/universal-darwin8/nkf.bundle lib/ruby/1.8/universal-darwin8/io/wait.bundle lib/ruby/1.8/universal-darwin8/iconv.bundle lib/ruby/1.8/universal-darwin8/fcntl.bundle lib/ruby/1.8/universal-darwin8/etc.bundle lib/ruby/1.8/universal-darwin8/enumerator.bundle lib/ruby/1.8/universal-darwin8/dl.bundle lib/ruby/1.8/universal-darwin8/digest.bundle lib/ruby/1.8/universal-darwin8/digest/sha2.bundle lib/ruby/1.8/universal-darwin8/digest/sha1.bundle lib/ruby/1.8/universal-darwin8/digest/rmd160.bundle lib/ruby/1.8/universal-darwin8/digest/md5.bundle lib/ruby/1.8/universal-darwin8/digest/bubblebabble.bundle lib/ruby/1.8/universal-darwin8/curses.bundle lib/ruby/1.8/universal-darwin8/bigdecimal.bundle lib/libsqlite3.dylib lib/libsqlite3.0.dylib lib/libsqlite3.0.8.6.dylib lib/libruby.dylib lib/libruby.1.8.dylib lib/libruby.1.8.6.dylib lib/libreadline.dylib lib/libreadline.5.dylib lib/libreadline.5.2.dylib lib/libhistory.dylib lib/libhistory.5.dylib lib/libhistory.5.2.dylib bin/sqlite3 bin/ruby bin/rlgen-ruby bin/rlgen-java bin/rlgen-dot bin/rlgen-cd bin/ragel you can also use the lipo-script, to stick together an universal binary: http://rubyosx.rubyforge.org/lipohack.rb *Testing* please also test your ruby compilation on fresh installs of the target systems you are building for. also, please test the compiled ruby by watching the compile output and running the runner.rb. ('ruby runner.rb' from the '/test' directory in the source) - make sure you are not root when running this test, else you could experience the following error: test_s_open_error(TestSDBM) [./sdbm/test_sdbm.rb:123]: exception expected but none was thrown. Also, if your Ruby segfaults randomly or you get an 'Abort trap' when installing a gem, check if the pack and unpack tests fail. in this case, you maybe compiled Ruby on i386 and try to run it on pcc? Ruby 1.8.6 builds faulty Universal Binaries. Stick to this One-Click-Installer if you want to be on the safe side. Example #1: ruby -e 'p [1].pack("N") == "\000\000\000\001", "\000\000\000\001".unpack("N") 1) Failure: test_pack_N(TestPack) [./ruby/test_pack.rb:25]: <"\000\000\000\001"> expected but was <"\001\000\000\000">. 2) Failure: test_unpack_N(TestPack) [./ruby/test_pack.rb:40]: <1> expected but was <16777216>. 1531 tests, 14704 assertions, 2 failures, 0 errors Example #2: # gem install ruby-activeldap Bulk updating Gem source index for: http://gems.rubyforge.org /usr/local/lib/ruby/1.8/date.rb:415: [BUG] Segmentation fault ruby 1.8.6 (2007-03-13) [ppc-darwin8.9.1] Abort trap *Testers and Test Machines for Ruby-One-Click Installers* 2.33GHZ Intel Core2Duo 15" MBP 1.33GHZ PPC PowerBook G4 12" thanks to the initial Testers: Mathias Müller, Robert Pinzolits, Mic Wlodkowski *Test Results for the One-Click-Installer Packages* +Result from 10.4.10 i386 Core2Duo MacBook Pro+ Loaded suite . Started ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ................................. Finished in 86.579065 seconds. 1531 tests, 14719 assertions, 0 failures, 0 errors +Result from 10.4.10 PPC G4 12" Powerbook 1.33GHZ+ Loaded suite . Started ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ........................................................................... ................................. Finished in 117.283735 seconds. 1533 tests, 14730 assertions, 0 failures, 0 errors *Post-Install* Depending on your OS, your shell is either bash, csh or tcsh. As you need to add /usr/local to your path, so your system finds the files installed with the update, proceed as follows: *Credits* Thanks to Mark Hubbard and Jeff McCune for advise and patching and to all the others that tested and helped out. ///////////////////////////////////////////////////////////////////////////