2012年12月13日木曜日

MacにHomebrewでgcc最新版(4.7)をいれるまで

環境

Mac OSX 10.7.5

 

brewでInstall

$ brew install https://raw.github.com/Homebrew/homebrew-dupes/master/gcc.rb --enable-all-languages --use-llvm

長い。 

 

シンボリックリンクの変更

brewでインストールしただけでは、gccのシンボリックリンクは変わらない。

確認方法

$ ls -l /usr/bin |grep "gcc\|g++"

 

変更

$ sudo ln -sf /usr/local/bin/gcc-4.7 /usr/bin/gcc
$ sudo ln -sf /usr/local/bin/g++-4.7 /usr/bin/g++

 

gcc -v等で、確認可能。

 

2012年12月10日月曜日

TideSDKにてHelloWorldをするまで

入れたもの

TideSDK 1.3.1
TideSDK Developer(1.4.2)

自分の環境

Mac OS X 10.7.5

http://www.tidesdk.org/より
(1)TideSDK 1.3.1-beta-osx-x86-84.zip
(2)TideSDK-Developer-1.4.2-osx-x86-64.dmg
この2つのダウンロード
スクリーンショット 2012 12 10 3 23 01



手順1:TideSDK 1.3.1-beta-osx-x86-84をrename

TideSDK 1.3.1-beta-osx-x86-84.zipを解凍後、terminalにて
公式サイトのDocに以下のようにしろとのこと
~/Library/ApplicationSupport/TideSDK
つまり、
mv TideSDK1.3.1-beta-osx-x86-84 ~/Library/Application\ Support/TideSDK
という風にrename。
※自分の場合は、先に手順2をやったせいか、~/Library/Applications Support/TideSDKができていた。なので一度消して、mvの方を先にやったらうまくいった。

手順2:TideSDK Developer.appをアプリケーションフォルダに突っ込む

スクリーンショット 2012 12 10 3 36 14

手順3:TideSDK-HelloWorld-masterのダウンロード

https://github.com/TideSDK/TideSDK-HelloWorld
からgitでcloneするなり、zipでダウンロードするなりして解凍まで。

手順4:TideSDK Developer.appの起動

当然最初は何もない
スクリーンショット 2012 12 10 3 41 26

手順5:TideSDK-HelloWorld-masterのインポート

スクリーンショット 2012 12 10 3 47 12
スクリーンショット 2012 12 10 3 53 00

以下のような感じになる。
スクリーンショット 2012 12 10 3 56 45

手順5:アプリの起動確認

test & packageタブを選択
スクリーンショット 2012 12 10 4 00 31

左下にある Launch Appボタンをクリック
スクリーンショット 2012 12 10 4 01 32

Nice "Hello World"!!
スクリーンショット 2012 12 10 4 02 27

2012年6月21日木曜日

vim プラグインを管理する

ちょっと前まではVimにプラグインなどは入れない派だったけど、せっかくvimテクニックバイブル ~作業効率をカイゼンする150の技を買ったので、色々面白そうなのを入れてみる。

とりあえず、プラグインを管理するためのプラグインがあるらしい。
・vimball
・getscript.vim
・pathogen.vim
・rtputil.vim
などなどがあるらしいけど、調べてみると、Vundleというものが素敵らしい。

参考サイト様
2011年のVimプラグインの管理はVundleで

初めてプラグインを扱うので、どうやるのかも初心者(サーセンorz

とりあえず、コマンドラインで残しておく

環境
Mac OS X 10.7.4
Vim 7.3
Git が必要
READMEではgit clone で直接.vim/とあるが、dotfile(.vimrc等)をgitでやっている方はggってください。
今回はREADME通りにする。



>git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle
>vi .vimrc


.vimrcに

filetype off

set rtp +=~/.vim/bundle/vundle/
call vundle#rc()
"必須
Bundle 'gmarik/vundle'
"---以下で管理
"githubにあるプラグイン

"www.vim.orgにあるプラグイン

"github以外のgitのリポジトリ

filetype plugin indent on


なんかREADMEに色々入ってるが、最低はこれだけで良い。

そして保存(:w)した後にvundleをインストールする。


:BundleInstall



ッターン
以上です。

使いたいプラグインがあったら、特にgithubに上がっているやつだと、.vimrcにURLを記述するだけでよし。
具体例
colorschemeのsolarizedを入れたい
URL:https://github.com/brantb/vim-colors-solarized.git


.vimrcにて

”githubにあるプラグイン
Bundle 'altercation/vim-colors-solarized'


で、保存ーー>BundleInstall

では削除したい時、
.vimrcから消す。

そして

:BundleClean


以上。

注意)
Bundle 'gmarik/vundle'
と同じ行にコメントを書くとエラーが起きるので、違う行に書くこと。
引数としてとってしまうらしい。

2012年3月5日月曜日

rvmで複数のバージョンのRubyとRailsを混在させるまで

Okinawa.rbに参加するべく、色々調べた。
[rvm]というもので、Rubyのバージョンを複数混在できる。
さらにさらに、1つのRubyのバージョンに複数のバージョンのRailsも混在できるらしい。

rvmは既にインストールしていたので、省略。(ログ残しとけば良かったorz)

rubyのバージョンを変えるには
->1.8.7へ
>rvm 1.8.7

->1.9.2へ
>rvm 1.9.2
まぁなんて簡単♪

rvmで管理していない状態に戻すには

>rvm system



楽するために
>rvm --default 1.9.2

完全に元に戻すには
>rvm reset



------------< gemset >
rubyのバージョンが変わると、gemも切り替わってる(※gem env や gem list で違いを確認可能)
しかし、1つのRubyのバージョンには1つのgem環境。
rvmでgemの環境も複数管理できるっぽい
gemsetというもので集合を扱っている。
>rvm 1.9.2
>rvm gemset list

gemsets for ruby-1.9.2-p290 (found in /Users/kanpe777/.rvm/gems/ruby-1.9.2-p290)
   global

しょっぱなではglobalというgemsetがあるだけ
新しいgem環境を作ってみる
>rvm gemset create test
'test' gemset created (/Users/kanpe777/.rvm/gems/ruby-1.9.2-p290@test).

確認
>rvm gemset list

gemsets for ruby-1.9.2-p290 (found in /Users/kanpe777/.rvm/gems/ruby-1.9.2-p290)
   global
   test

消す
>rvm gemset delete test

Are you SURE you wish to remove the entire gemset directory 'test' (/Users/kanpe777/.rvm/gems/ruby-1.9.2-p290@test)?
(anything other than 'yes' will cancel) >

確認してくるので、yesを打ち込み、Enter
複数のRailsのバージョン用のgem環境を作成

>rvm gemset create rails30
>rvm gemset create rails31
>rvm gemset create rails32


gem環境を切り替える

>rvm gemset use rails30

もっと簡単に
>rvm 1.9.2@rails30


確認

>rvm gemset list


   global
=> rails30
   rails31
   rails32



railsのインストール前にsqlite3のインストール

>gem install sqlite3-ruby
>gem install sqlite3


そして、railsの3.0をインストール
バージョンを指定しなければならない

>gem install -v=3.0.5 rails


少し時間がかかる

次にgem環境を変え、rails3.1をインストール
>rvm 1.9.2@rails31


やることは一緒、railsのバージョンが異なるくらい

>gem install sqlite3-ruby
>gem install sqlite3
>gem install -v=3.1.1 rails


似たようなことを1.9.2@rails32にも....これ書いた時の最新railsのバージョンは 3.2.2であった。
終わったら、
>rvm 1.8.7


そして、同じようにgemset createをする
(rvm gemset listするとわかるが、1.8.7に変えるとgemsetの中身も変わっていることが確認できる)
そして同じようなことをすると出来上がり。
今後、rubyの1.8.7でrailsを使わないと判断したので、入れない。
一応入れると以下のようなことが予想される

  • rvm 1.8.7@rails30 -> rails 3.0
  •                @rails31 -> rails 3.1
  •                @rails32 -> rails 3.2
  • rvm 1.9.2@rails30 -> rails 3.0
  •                 @rails31 -> rails 3.1
  •                 @rails32 -> rails 3.2

2011年12月9日金曜日

github_masterをpush

githubのアカウントを登録をした。
忘れるからメモ

まずリポジトリを作成(New repositoryボタンをクリック)

そうすると、、、以下のような画面に遷移
Project Name と Description書いて
Create Repositoryをクリック(HERE!!って遊びで書いといた)
すると、
たしかSSHのやつをcloneしてもいけるんじゃね?


masterとして送る方法(多分公開keyと秘密鍵が必要?)
チュートリアルから
ローカルにて
>mkdir Hello-World
>cd Hello-World
>git init
>touch README
>git add README
>git commit -m 'first commit'
>git remote add origin git@github.com:自分のアカウント名/Hello-World.git
>git push origin master
これでさっきリポジトリを作成したページを更新するとできてた。


2011年12月7日水曜日

rails 3.1.1 をmac lion にインストール

前回 ruby 1.9 を入れた

>ruby -v
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-darwin11]


こんなのでる。

次にgemのリストを見る

>gem list
~
rails (3.1.3, 3.1.1)
~


いろいろ失敗して3.1.3とか中途半端に入っていて、かつ3.1.1も失敗していた。
最初からやるために一度アンインストールしとく

>sudo gem uninstall rails

Select gem to uninstall:
 1. rails-3.1.1
 2. rails-3.1.3
 3. All versions
> 3
Successfully uninstalled rails-3.1.1
Remove executables:
rails

in addition to the gem? [Yn]  y
Removing rails
Successfully uninstalled rails-3.1.3

アンインストール成功したっぽい
確認はもっかいアンインストールしようとするか、「>gem list installed」とかで確認できる。
やっとgemでrails -v 3.1.1をインストール
しかし、このままでは"lib" notfound的なエラーが.....
下記を実行
>sudo gem install rdoc

Fetching: rdoc-3.11.gem (100%)
Depending on your version of ruby, you may need to install ruby rdoc/ri data:

<= 1.8.6 : unsupported
 = 1.8.7 : gem install rdoc-data; rdoc-data --install
 = 1.9.1 : gem install rdoc-data; rdoc-data --install
>= 1.9.2 : nothing to do! Yay!
Successfully installed rdoc-3.11
1 gem installed
Installing ri documentation for rdoc-3.11...
Installing RDoc documentation for rdoc-3.11...

これが今まで失敗していた原因だったぽい

>sudo gem install rails -v 3.1.1

次に確認として、railsで何かしらのプロジェクトを作成
そしてサーバーを立ち上げる
>rails new hoge
成功したら
>cd hoge
>rails server

=> Booting WEBrick
=> Rails 3.1.1 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
成功
テキトーにブラウザ開いて
http://localhost:3000
を開く。
確認done


===余談

次にお決まりのMacportのselfupdate

>sudo port selfupdate
ちょっとこれ毎回しんどい。cronで常にupdateをかけようか迷うレベル
portは無理やり .zshrc の環境変数に
>vi .zshrc

export PATH=/opt/local/bin:/opt/local/sbin:$PATH
export MANPATH=/opt/local/share/man:/opt/local/man:$MANPATH
これらを入れないといけない。こんなふうに無理やりパスを通すと、いろいろ不具合が出るのかね?(出るらしい)
portではなく、これから homebrew にしようか迷う
これは保留



2011年12月4日日曜日

gdbメモ

授業で
LLVMのソースを読むことをした。
その際にgdbを使い、ソース読み。

gdbを実行する前に、コンパイルする際に-vをつけると情報いっぱい。

(gdb)>b 関数

b= (breakpoint)
で run した時、止める

(gdb)>s
で関数に潜ったりする。

(gdb)>fin
finishでsから一回分抜け出す。

(gdb)>n
nextで次の命令へ飛ぶ

(gdb)>where
関数がスタックに積まれている様子を見ることができる

(gdb)>l
今いるソースを(10行)表示