2011年12月15日木曜日

ubuntuでruby - rvmでrubyをインストールする

前回はrvmのインストールをしたので今回は

rvmでrubyのいんすこチャレンジ


rvmでなにかをインストールする

rvmでのインストールは
$>rvm install ほげほげ


みたいにかくみたい。

と、その前に・・・


rubyをいんすこするときには、いろいろオプションつけておかないといけません
あとで困ります
あとでってのは、herokuを使おうとしたときですが

せっかくだからheroku使おうかな、なんて思ってるひとは準備をおこたりなく

ここで、rubyをインストールしたいところですが、あとでいろいろ困るので、必要なものをインストールしておこう
rubyを入れて適当に触るだけならいらないかもしれないので、飛ばしても良いのかな?


ここから準備

rubyインストールしていて、途中で「ねぇよ!」って言われた

  • bison
  • autoreconf
apt-getでいんすとしてください。
$>sudo apt-get install bison

$>sudo apt-get install autoconf



heroku使おうとおもったら、「ないからダメ」って言われた

  • openssl
  • readline
  • zlib
こいつらが厄介なのは「もう入れたよー」とか思っていても「rvm的に見えないからだめ」と言われることです rvmでいんすこしてください
大事なのでもう一度

rvmでいんすこしてください

パッケージのインストールは
$>rvm pkg install oppenssl

$>rvm pkg install readline

$>rvm pkg install zlib


ってな具合です。

ここまで準備



さて、それではお待ちかねの

rubyいんすこたーいむ


$>rvm install ruby-head -C --with-openssl-dir=$HOME/.rvm/usr --with-readline-dir=$HOME/.rvm/usr --with-zlib-dir=$HOME/.rvm/usr
準備でいんすこしたパッケージを指定してください
これをやっとかないと、herokuのとき泣きます
てか泣きました
もう一度

準備でいんすこしたパッケージを指定してください


これでインストールは完了です
お疲れ様でした

それでは

入ったもの、確認


$>rvm listrvm rubies

ruby-1.8.7-p352 [ x86_64 ]
ruby-head [ x86_64 ]

へー、1.8系が入ったんだ
じゃ、1.9系も入れとこ

$>rvm install ruby-1.9.2 -C --with-openssl-dir=$HOME/.rvm/usr --with-readline-dir=$HOME/.rvm/usr --with-zlib-dir=$HOME/.rvm/usr

yamlがmakeできないとか表示されるも、インストールは完了

$>rvm list

rvm rubies
ruby-1.8.7-p352 [ x86_64 ]
ruby-head [ x86_64 ]
ruby-1.9.2-p290 [ x86_64 ]

これで、1.8系と1.9系が好きなように選択できるようになりました
最後に、選択してみましょうか

1.8系
$>rvm 1.8.7



1.9系
$>rvm 1.9.2



バージョン確認してみよう

ってところで、今日は終了です

2011年12月13日火曜日

ubuntuでruby - rvmをインストールする

導入

Ruby環境をつくろうと思いましたが、
1.8系と1.9系とあって、どっちもインストールするにはどうしたら良いのだろう?

とか思っていたら、直接インストールするのは過去の出来事だったようで、
バージョン管理してくれるのがあるじゃないですか

その名も

RVM

みなさん、知ってました?

今回は、これをインストールするところをメモです

準備

なにごとも準備が肝心ですね
RVMインストールに必要らしいので、GitとCurlをインストール

$>sudo apt-get install git

$>sudo apt-get install curl

RVMインストール

$>bash < <(curl -s https://rvm.beginrescueend.com/install/rvm)

このまましばらく待っていると、なんとなく終了するので、バージョン確認

$>rvm -v

No command 'rvm' found, but there are 19 similar ones
rvm: command not found

あれ?
みつからない?

ちょっとぐぐったら、.bashrcに、追記しなきゃ行けない呪文があるとか

[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm"

さっそく書いてみよう

$>vi ~/.bashrc

あれ、書いてある
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM
into a shell session *as a function*

てことは、再読み込みか

$>source ~/.bashrc

$>rvm -v

rvm 1.10.0-pre by Wayne E. Seguin (wayneeseguin@gmail.com) [https://rvm.beginrescueend.com/]

お、おっけーじゃん

ということで、ここまでは無事にたどり着きました
次はRubyとかRailsとかインストールしていこうかな

2011年12月9日金曜日

enumってベンリかな

みなさま、こんにちは。
なかなかブログの更新速度があがらないnouzui2007です。
すっかりごぶさたしておりますが、平常運転すぎてあまり気になりませんねw

さて、今回のお題ですが、enumいってみたいと思います。

enumって、列挙型なんて日本語があてられてます。

列挙型

なんか、わかったような気がしてきませんか?
よく知っている表現というのは大切ですねw

これ、なんのために使うかっていうとですねぇ

  • カレンダーの1月から12月を定数にして、まとめておく
  • トランプのスーツ(スペードとかハートとかのあれです)を定数にしておく
  • コーラの種類を定数化したい
とか、みたいな場合に使います。

なんとなくわかったかもしれませんが、

あらかじめ要素数がわかっている定数たちを、まとめておける

のがenumです。

単純なenumは、書き方がCやC++とそっくりです。

enum CocaCola { NORMAL, ZERO,・・・ }

でも内側はちがっていて、Cとかみたいに整数で定数を保持するのではなくて、実態はクラスです。

この列挙型で何がうれしいか。



プログラム中のswitchであつかえる

地味にうれしくなるこの機能ですが、どうでしょう。
分岐は値でやられると、あとで読むとわからなくなるんですよねぇ。
自分で書いててもだめです。
いろいろ覚えていられる期間中は定数化したりするほうが面倒なんですが、いろいろ忘れ始めると「なんだっけ、これ?」の連続です。

覚えていられるうちにenum
ですw


独自のメソッドとか入れられる

単純なenumだと、NORMALとかZEROとかにどんな値が設定されているかは秘密になってます。
でも、それじゃ困る場合もあります。
たとえば、カレンダーでの月をenumにしたい場合、JANUARYを1にしたいですよね。
そんな場合は、メソッドを入れてしまって対応しましょう

enum Calendar {
    JANUARY(1),
    FEBRARY(2),
          ・
          ・
          ・

    private int value;

    private Calendar(int value) {
        this.value = value;
    }

    private int getValue() {
        return this.value;
    }
}

こんな感じにかけちゃいます。

これはベンリ!

参考:







githubでいこう

gitについてかるく調べてみましたが、セットでただよっていたのがgithub。
これ、同じものだと思ってました。短縮形、みたいなねw

正式サービス名:github
略称:git

ホントすいませんm(_ _)m

githubはgitリポジトリを提供してくれるサービスだす。
特徴はこんな感じでしょうか。
  • オープンソースなら無料
  • 他人のリポジトリを勝手にダウンロードできちゃう
  • ダウンロードしたものを改造して公開だっておk
  • パッチをあててください、とゆーお願いだって大丈夫
  • wikiつかえる

いいですねぇ。
プログラマにやさしい世界が広がっている感じです。

それではさっそく登録です。

ちょっと英語ですが、気にしないでいきましょう。


http://github.com/



中央に「Plans, Pricing and Signup」とあるので、ここをクリックしてください。



ページが表示されると、$マークが見えますね。
なんだか有料のように見えますが、ちょっと上に色が薄い枠がありませんか?
$0/moと表示してありますね。
オープンソース用の無料プランですので、これを選んでください。
あ、内緒にしたいソースしかない場合は、他のプランを選択してくださいね。



必要な内容を記入してください。
Create Acountしたらば、あなたもgithubで仲間です。
・・・えらそうですが、自分も初めてです(〃´・ω・`)ゞえへ

一緒にがんばりましょう

続きます

2011年11月29日火曜日

Aptana Studio3をいんすこしたらGit入れろといわれた

みなさん、こんにちは。
今日はだめ人間なnouzui2007です。

nouzui2007の普段使っているマシンは、Ubuntuくんですが常日頃会社とかで使っているマシンは、残念ながらWindowsだったりします。
別に不満はないのですが、たまにWindowsだと出る現象とかがあって、ちょっと困るので、今日はそんなメモ。

今回は、Aptana Studio3のインストールです。

railsをやりたくてインストールしてみました。
下のリンクからダウンロードできるので、興味があればダウンロードしてインストールしてみてください・・・って興味なかったら、見てないか
Aptana


が、Gitが見つからんとか言われました。

いやいや、入ってないっすよ。
個人PCじゃないもん、Git使ってないもん( ̄ε ̄ )
それにしても、なんでGitさ、と調べてみたら、Gitを使ってるみたいなんですよ。
Getting Startに書いてありました。

さいしょっから読めよ、といったコメントは受け付けません!
なぜなら、マニュアルは読まないタイプなので( ̄^ ̄ )

msysgitっつーのが必要らしいんですわ。しかもWindowsの場合は~なんて言われてるし。
ま、いじけてても仕方がないので入れて見ましょう、msysgit。

msysgit
ここからダウロードできます。
左側のFeaturedってとこに最新版があるので、そこからどうぞ。
ちなみに、この時点での最新版は、Git-1.7.7.1-preview20111027でした。

でふぉでいんすこ完了!

ダイアログを出しっぱなししていたので、「use portable git」をクリックしたが、NG。
しかたなく、Browsして、インストールしたmsysgitを指定。
でふぉでインストールすると、C:\Program Files\Git\bin\git.exeにあるので、これを指定してください。

これで、OK!
Aptana Studioを起動して、Railsプロジェクト作成!

おお!なんか、下にViewが出てきた。
コマンド打ってるよー!!
なんか、かっちょいー

とか、わくわくして待ってたら・・・エラーかよorz

railsコマンドがないとか言われた。
えー、入ってないのー?

仕方ないので、Ruby入れた
Ruby Installer

これは、RubyとGemをいんすこしてくれるし、GUIだし、楽チンです。

この間、Aptana Studioは起動したままだったわけですが、そのままgemコマンドを実行してみた。
$>gem update --system

gemしらねっていわれた(´・ω・`)
なんでた?もしかして再起動?

とゆーわけで、Aptana Studio再起動してみた。
今度こそ
$>gem update --system

やった、成功!
って、まだまだrailsができないじゃん。

railsインストール
$>gem install rails -v 2.3.14

だって、rails3でわかんなかったらやじゃん
とりあえず、インストールがすんだら、railsコマンドに再チャレンジ!

$>rails .

こんどは成功。
これで開発できるね


2011年11月23日水曜日

UbuntuからAndroidへファイルを転送する(SFTP)

UbuntuのPCから、Androidへファイルを転送する方法のご紹介です。
つなげばいいじゃん、だと話にならないので、ネットワークを使います。

方法はいたってシンプルで、SSHを使って、SFTPで転送しましょう、ということです。


Android側の設定

設定といっても、インストールするだけですが。
マーケットでSSH系のアプリを探してインストールしてください。

今回使ってみたのは、SSHDroidです。
こいつは、なかなかお手軽なやつで、起動と同時にSSHサーバになりやがります。で、接続のための情報を表示しておいてくれます。


Ubuntu側の設定

コマンドでやるなら、インストールするものはSSH関連だけですが、今回はGUIです。
FileZillaをインストールしてください。
Ubuntuソフトウェアセンターにあるので、インストール!


接続しよう!

SSHDroidを起動します。サーバ情報が表示されます。
FileZillaを起動します。
SSHDroidに表示されたサーバ情報を入力します。
FileZillaの接続ボタンをクリック
接続!

・・・とならなかった方、いらっしゃいますか?
nouzui2007は、この時点で重大なエラーがあるとかなんとか言われました。

ホストの先頭に、sftp://をつけたら接続できました。
どうやってつなぐか迷ったのかな?
よくわかりません。

とゆーことで、いかがでしたでしょうか。
今度は、Android側からUbuntuにつないで、ファイルを取っていけるようにしたいなぁ

ではでは

UbuntuでSSHを活用してファイルを転送する(SFTPのおはなし)

問題

nouzui2007は、PCを2台持っています。
1台はHDDが大きく、持ち運びが楽なもので、よく持ち歩いています。こちらがメインのPCです。
1台はHDDが小さく、古いものなので、寝室に据え置いて、寝る前とかに使う程度です。
寝る前にnouzui2007はおもしろいファイルを見つけたのでダウロードしました。
これを持ち運ぶメインのPCに移すには、どうしたら良いでしょうか。
OSは両方ともUbuntuとします。



さて、答えの前に、Windowsだった場合を考えてみましょう。
Windowsだったら、

  1. コピー先のPCに共有フォルダを作る
  2. コピー元のPCで、ネットワークコンピュータから、接続先のPCを見つける
  3. コピー元のPCから、コピー先のPCに接続する
  4. コピー先のPCのフォルダ(共有フォルダ)にファイルをコピーする

こんな感じですね。
コピーしたファイルを別の場所(お気に入りやポリシーに従ったフォルダ)に移動する作業が発生するかもしれません。

じゃあ、Ubuntuだったら?
これは、結構悩みましたよ、実際。
Windowsとの接続については、難しいとゆーか、手応えがあるとゆーか、ちょいむずなせいか、解決のネタが結構転がってるんですよ。

ところが、ですよ。
Ubuntu同士になると、なかなか思うような解決策がない。
それもそのはず、接続のための機能がはじめっから、いろいろ用意されてたのね。
そこで、SSHですよ。

nouzui2007的には、SSHはコマンドオンリーでした。
ここが、間違いの出発点ね。
SSHでの通信には、SCPとSFTPとかもあって、これにGUIがあるのだ!!
と、先日しりましたf(^^;

GUIでは、FileZillaを使ってみました。これ、FTPだけじゃなくて、SFTPもできたのね。
これ、接続がちょっとおもしろい感じのFTPツールですわ。
ローカルとリモートが並べて表示できて、ドラッグ&ドロップでファイルの転送ができるやつです。

SFTPは、ログインしたユーザに設定されたパーミッションに従ってファイルが配置できるので、結構便利です。特別な設定をしなくても、ホームから出れたりしてね。

使ったソフトウェアのインストールなどをまとめておきますか。
初めから入ってたような気もするけど、念のため。


SSH関連

$>sudo apt-get update
※まぁ、おまじないかな。やらなくてもいいかも

$>sudo apt-get install ssh
※これでSSH関連が入ります。opensshを使ってます。openssh-serverとか、個別に指定しても良いかも知れませんが、面倒なので。


FileZilla

アプリーション -> Ubuntuソフトウェアセンターから、FileZillaを検索してインストール

または

$>sudo apt-get install FileZilla

公開鍵とか、その辺の設定はしていませんので、お使いになる環境にご注意くださいませ。
家庭内のLANなので、その辺はずぼらですw