Ubuntu12.04でとりあえずrvmのrails環境を作る

Ubuntu12.04をVmWareに入れたので環境構築メモ

 

※個人的な作業環境の調整(フォントサイズ調整)のためAdvancedSettingsをインストール

 

1.rvmのインストールに必要な物をインストール

 $ sudo apt-get install curl

2.ここを参考にrvmをインストール

 $ curl -L get.rvm.io | bash -s stable

 $ source ~/.rvm/scripts/rvm

※.bashrcへのPATH追加は勝手にしてくれてますね

追記

 ~/.bashrc もしくは ~/.bash_profile に以下を追加しました。

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

3.rubyについては以下をインストール、ということなのでインストール

 $ sudo apt-get install build-essential openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev automake libtool bison subversion

4.rvmでrubyをインストール

 $ rvm install 1.9.3-p125

※最新(head)はp194です。私の環境でp125使ってるのでp125入れてます

rubygemsこの時に入れてくれてますね

追記

 default で使用するrvmを指定していなかった

 $ rvm --default use 1.9.3-p125

5.共通で使うようにRailsインストール

※共通のRails入れないならいらないか

 $ gem install rails

6.私はgemset毎にRails入れようと思うのでgemset作成

 $ rvm create gemset ********(お好きな名称でどうぞ)

7.gemsetの切り替え

 $ rvm gemset use ********

8.改めて対象のgemsetでRailsのインストール

 $ gem install rails

※ドキュメントいらないなら--no-ri --no-rdocオプション付きで

※入ったのはrails3.2.3

9.Railsの確認

 $ rails new rails-test

と、何やらエラー...

An error occured while installing rake (0.9.2.2), and Bundler cannot continue.

Make sure that `gem install rake -v '0.9.2.2'` succeeds before bundling.

 $ gem install rake -v '0.9.2.2'

としてもう一回bundle installを実行

今度はMake sure that `gem install coffee-script-source -v '1.3.1'` succeeds before bundling.

 
.....どうも出続ける。stackoverflowではopenssl入ってないんじゃ?とか。
最初に入れてるんだけどなぁ。
rubyのインストールで--with-openssl-dirを指定するのも書いてあったので試す。
 $ rvm reinstall 1.9.3-p125 --with-openssl-dir=$rvm_path/usr
......やっぱりMake sure...と出るので一個ずつ入れていく
 
最終的に以下の分だけgemを入れ直し(?)た
 $ gem install coffee-script-source -v '1.3.1'
 $ gem install execjs -v '1.3.1'
 $ gem install coffee-script -v '2.2.0'
 $ gem install coffee-rails -v '3.2.2'
 $ gem install jquery-rails -v '2.0.2'
 $ gem install sass -v '3.1.16'
 $ gem install sass-rails -v '3.2.5'
 $ gem install sqlite3 -v '1.3.6'
 $ gem install uglifier -v '1.2.4'
うーん、もうちょっと調べる気力ないや...
誰か解決策しらないだろうか
 
10.ともあれ起動確認
 $ rails s
...ってエラー!そういえば3.2はこんなん見た気がするというわけでGemfileに追記
gem 'execjs'
gem 'therubyracer'
 で $ bundle install........  またもMake sure...  なんなの・・・
※追加
 $ gem install libv8 -v '3.3.10.4'
 $ gem install therubyracer -v '0.10.1'
改めて起動!! ....ん、行ったかな?行った!!
 
というわけで一先ず構築完了?
こんな時間に何やってんだ。。。
 
追記
 Gemfileのsource 'https://rubygems.org'を'http://rubygems.org'
 sshのエラーは解決した。
 解決したといっていいのか?

Ubuntu11.04でMecabのユーザー辞書を使う

こちらを参考に辞書を追加しようと思ったらいくらか違ったのでメモ。

 

1.ユーザー辞書ファイル(csv)を作成 ※/home/foo/bar/hoge.csvとする

2.$ cd /home/foo/bar

3.作成した辞書ファイルのコンパイル

$ /usr/lib/mecab/mecab-dict-index -d /usr/lib/mecab/dic/ipadic -u hoge.dic -f utf-8 -t utf-8 hoge.csv

※ -u オプションで、コンパイルした辞書ファイル名を決めます

※ -d オプションで、辞書ディレクトリを設定します(?)

※コンパイルを実行した場所に辞書ファイルが生成されます。

4.コンパイルした辞書ファイルを見るように設定

$ sudo vim /etc/mecabrc

- ;userdic = /home/foo/bar/user.dic

+ ;userdic = /home/foo/bar/hoge.dic

 

これで、追加したユーザー辞書が参照されるようになります。

第2回 渋谷Unity技術勉強会xコロプラ事例発表 参加レポ

第1回の勉強会には参加できませんでしたが、

今回第2回の勉強会に参加してきました。

【満員御礼/増員350名】第2回 渋谷Unity技術勉強会xコロプラ事例発表

第一回の内容はこちらで確認してました。

 

最初に軽く感想を書いてしまうと、非常に技術よりな会でした。

私のようにこれからUnityを触ろう、という人には難しかったかもですが

予め知識は入れてきたのである程度ついていけた・・・かな?

 

1.Unityテクニカル講座#1【WisdomSoft 赤坂玲音さま @LeonAkasaka

■Unityのアーキテクチャと概要

 テクニカル講座#1の最初、ということで非常に教科書的な内容のお話でした。

 ・マルチプラットフォーム.NET Frameworkな仕組みだよ

■Unityエンジンとスクリプト

 ・色々な(JavaScriptC#・Boo(!?))スクリプトで書けて、スクリプト事にプロジェクトができるよ

 ・デザイナ等の非プログラマとの差別化として依存性の低い再利用の効くコードを書こう

 ・.NET Frameworkは最新Ver4.0だけど、スマホ向けのプロファイルが2.0だから注意

■プログラミング時の注意

 ・「Object」と一言で言っても種類があるから注意

  ※System.Object・UnityEngine.Object・UnityEngine.GameObject

 ・値型と参照型を意識しよう

 ・GCでもクラス配列の要素消し忘れとかしてたらメモリリークはするよ

 

2.Unity開発事例発表#2【コロプラ代表 馬場さま】

 ・発表事例#1のおさらい(きらきらドロップ!)

 ・今回は最近リリースしたリズムコインでの話

 ・GUIはEzGUIを使ってる

 ・デバッグ・難易度調整のために自動化フラグ・処理高速化の仕組みを入れておく

 ・パフォーマンスチューニングについて

  ○DeepProfiler(Pro版の機能)を使って高負荷な処理を特定して改善する

  ○ヒエラルキーなどツリー検索をするメソッドは極力使わない

  ○DateTime/TimeSpan型を使わない

  ○RayCastの使用を控える(使用箇所を限定する)

  ○パーティクルは大きく、少なく(非描画領域に行かないようなパラメータ調整等も)

 ・Androidデバイスでの機種依存の問題

 

懇親会には残念ながら参加できませんでしたが、

事前知識として非常に役に立つ勉強会となりました。

次回も参加予定ですし、それまでにUnity触っておかないと・・・。

UbuntuでOpenGL

メモメモ

 

UbuntuOpenGL使ってPMDファイルの読込をやってるので色々とメモを残していきたい。

ひとまず1.2以降の拡張機能(頂点バッファ)を使いたかったのでGLEWをインスールした。

 

※こちらのサイトを参考にしました

http://oshiro.bpe.es.osaka-u.ac.jp/people/staff/imura/OpenGL/OpenGL/glew/disp_content

 

http://glew.sourceforge.net/ ここから最新版のGLEWをダウンロード

展開: tar zxvf glew-1.7.0.tgz 

展開したディレクトリに移動: cd glew-1.7.0

makeしてinstall: make;    make install;

 

あとは#include <GL/glew.h>して終わり?

glew.hの前にgl.hやglu.hしてるとエラーになる。

<追記>

リンカの設定に-lGLEWを追加しないと行けなかった。あぶあぶ。

RailsのScaffoldで生成されるテンプレートの修正

自分用メモ

 

とりあえずサクッと出力内容を変えたかった、というか

index.html.erbのtableにtheadとtbodyを入れたかった。ので、

おおもとの出力ファイルの内容を変えて対処。

 

場所が

~/.rvm/gems/*******/gems/railties-3.0.5/lib/rails/generators/erb/scaffold/templates

直接じゃなくて、プラグインとかでテンプレート変更するようにしたほうが今後は役に立ちそうだし

気が向いたらやってみよう。

jquery.backgroundPosition

背景画像をアニメーションさせる、というので

jQueryとそのプラグインbackground-position animationsを使っていたコーダーの方に

jQuery1.6.4で動かないと言われたので調査した結果。

 

プラグインの記事を調べてたらjQueryのバージョンはどれも1.3止まり。

どうやら1.5から仕様が変更になって、プラグインでその変更になったプロパティを参照していたらしい。

ただそのことに関する記事が見当たらなかったので以下に書いておく。

 

原因:

プラグインで使用していたプロパティ「curAnim」が1.5以降で使われていない。

jQuery1.3で「opt.curAnim = jQuery.extend({}, prop);」としてcurAnimにいれていたプロパティを参照していたが

jQuery1.5から「prop = jQuery.extend( {}, prop );」と上書く用に修正されている。

 

対応:

プラグインでcurAnimを参照していた「var end = toArray(fx.options.curAnim.backgroundPosition);」の部分を

「var end = toArray(fx.end);」にすることで行けた。

1.5以降でこの箇所に変更がないなら最新verでも動くと思う。

 

プラグインいらなくなったんじゃ、と思ってプラグインなしで書いてみたら

ChromeFireFoxとか挙動が違うらしく上手いこと行かなかった。

これについてはどこかのブログに記載されていた気もする。