CentOSにrubyをバージョンアップ

古いのを削除

#yum remove ruby-libs

新しいのをゲット

#wget ftp://ftp.ruby-lang.org/pub/ruby/1.8/ruby-1.8.7-p174.tar.gz
#./configure --prefix=/usr/local/ruby
#make
#make test
#make install
#export PATH=/usr/local/ruby/bin:$PATH
#ruby -v
#ruby 1.8.7 (2009-06-12 patchlevel 174) [i686-linux]

rubygemsを入れる。

#cd rubygems-1.3.4
#ruby setup.rb config


最後確認

# gem env
RubyGems Environment:
 - RUBYGEMS VERSION: 1.3.4
 - RUBY VERSION: 1.8.7 (2009-06-12 patchlevel 174) [i686-linux]
 - INSTALLATION DIRECTORY: /usr/bin/ruby/lib/ruby/gems/1.8
 - RUBY EXECUTABLE: /usr/bin/ruby/bin/ruby
 - EXECUTABLE DIRECTORY: /usr/bin/ruby/bin
 - RUBYGEMS PLATFORMS:
   - ruby
   - x86-linux
 - GEM PATHS:
    - /usr/bin/ruby/lib/ruby/gems/1.8
    - /root/.gem/ruby/1.8
 - GEM CONFIGURATION:
    - :update_sources => true
    - :verbose => true
    - :benchmark => false
    - :backtrace => false
    - :bulk_threshold => 1000
 - REMOTE SOURCES:
    - http://gems.rubyforge.org/

Rails2.3でページ送り用のwill_paginate導入メモ

Rails2.0になってからデフォルトのページ送り機能がなくなった。
そこで、プラグイン型のwill_paginateを導入

  • git をgemの検索パスに追加
gem sources -a http://gems.github.com/
  • 導入
gem install mislav-will_paginate (will_paginateじゃないよ)
  • \config\environment.rb"の末尾に以下のrequireを追加します。
require 'will_paginate'

で、使えるようになるはず、使用方法は下記を参照
http://github.com/mislav/will_paginate/tree/master

PHPをコマンドラインから使用際max_execution_timeは無視される

max_execution_time

スクリプトがパーサにより強制終了されるまでに許容される最大の 時間を秒単位で指定します。
この命令は、いい加減に書かれた スクリプトがサーバーの負荷を上げることを防止するのに役立ちます。
デフォルトでは、30 に設定されています。

でも!!コマンドラインだったら話は別!

http://www.php.net/manual/ja/features.commandline.php
マニュアルによる↓
シェル環境では、PHP を際限なく使用できる ようにするために、最大実行時間の制限は無しに設定されています。
Web 用アプリケーションは数秒単位で実行されるよう作られていますが、
シェルアプリケーションの実行時間は、これよりかなり 長くなる傾向があります。

1ディレクトリの中の内容の上限値

ext2,ext3 :32768(しかし、経験上は32000)
ext4      :無限
    • ファイル数
ext2,ext3 :1000〜5000
ext4      :無限

情報源:http://www.linux.or.jp/JF/JFdocs/kernel-docs-2.4/filesystems/ext2.txt.html

Mac os X 10.4.11にRubyの開発環境を構築するメモー

先日妻が出産するために帰国しました。

日本での一年間ぐらいの一人暮らしが始まりました。

そこで妻が持っている2台のMacの中のノートの方を僕のところに放置しました。なんで2台も持っている?
妻はWebデザイナーならMacがいいだろうと言い張って、mac book一台とiMac一台を購入しました。

自分は今まで会社も自宅もPCだったんですが、これからはMacを使っていこうかなと思います。

さて、本気でRubyを始めます。まずは開発環境ですね!

    • デフォルトのXcodeのバーションが2.4で古すぎるので、Mac os X10.4使用可能のXcode2.5をここから入手してインストールしました。
http://developer.apple.com/mac/
↓
Member site
↓
ログイン
↓
Downloads
↓
Developer Tools
↓
Xcode2.5
$ open .bash_profile
パスを通します:
export PATH="/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/local/sbin:$PATH"

最新にする:
$ sudo port -d selfupdate
$ sudo port -d sync
    • ほかにもいろいろ入れる
$ sudo port install wget
$ sudo port install lynx
$ sudo port install ncftp
$ sudo port install gnupg
$ sudo port install tree
$ sudo port install nkf
$ sudo port install ffmpeg
$ sudo port install git-core +doc +svn
$ sudo port install vim +multibyte +perl +python25 +ruby +cscope
$ sudo port install lv
    • gemをアップデート
$ sudo port install rb-rubygems rb-termios

$ sudo port install subversion +tools

    • MySQL5も入れる
$ sudo port install mysql5 +server
自動起動を設定
$ sudo launchctl load -w /Library/LaunchDaemons/org.macports.mysql5.plist

もろもろ設定をする
$ sudo mysql_install_db5 --user=mysql
$ sudo mv /opt/local/share/mysql5/mysql/my-medium.cnf /opt/local/etc/mysql5/my.cnf
$ sudo pico /opt/local/etc/mysql5/my.cnf

...
	# In this file, you can use all long options that a program supports.
	# If you want to know which options a program supports, run the program
	# with the "--help" option.
	
	[mysqld_safe]
	socket          = /tmp/mysql.sock

	# The following options will be passed to all MySQL clients
	[client]
	#password       = your_password
	port            = 3306
	socket          = /tmp/mysql.sock

	# Here follows entries for some specific programs

	# The MySQL server
	[mysqld]
	port            = 3306
	socket          = /tmp/mysql.sock
	...

$ cd /opt/local ; sudo /opt/local/lib/mysql5/bin/mysqld_safe &	

    • Rails関連を入れる
$ sudo gem install rake rails capistrano mongrel mongrel_cluster

$ ARCHFLAGS="-arch i386" sudo gem install mysql -- --with-mysql-config=/opt/local/bin/mysql_config5

参考サイト:
http://www.buildingwebapps.com/articles/6455-setting-up-rails-on-tiger-mac