rbenvで2.0.0系のrubyインストール時のエラーの改善方法メモ
rubyのバージョンを2系にしないとrails 4系は動作しないらしい。
改善としてはrubyのバージョンを2系にするかrailsをダウングレードするかのみ。
今回はxcodeのバージョンをアップしていない(OSアップデートしていない)ため
railsのダウングレードをする
Warning: You're using Rubygems 1.8.23 with Spring. Upgrade to at least Rubygems 2.1.0 and run `gem pristine --all` for better startup performance. * bin/rake: spring inserted * bin/rails: spring inserted
Railsダウングレード
一度対象のRailsをアンインストールし再度バージョンを指定してRailsのインストールで完了
Railsアンインストール
gem uninstall railties -v '4.1.1'
※アンインストールバージョンが4.1.1の場合
Railsバージョン指定インストール
sudo gem install rails -v '3.2.10'
※インストールバージョンが3.2.10の場合
rbenvで2.0.0系のrubyインストール時のエラーの改善方法メモ
rbenvを使って2.0.0系をインストールをした時に表示されたエラー
環境はMac
Installing ruby-2.0.0... BUILD FAILED Inspect or clean up the working tree at /var/folders/_0/zkqz91qx18d3849bmjzhk5jh0000gn/T/ruby-build.20140416205643.91789 Results logged to /var/folders/_0/zkqz91qx18d3849bmjzhk5jh0000gn/T/ruby-build.20140416205643.91789.log ~~~~~~省略~~~~~ The Ruby openssl extension was not compiled. Missing the OpenSSL lib?
エラーとなりインストールができない。
改善方法
The Ruby openssl extension was not compiled. Missing the OpenSSL lib?
オープンSSLのLIBが足りない・・・
ライブラリがOpenSSLが足りていないエラーのためインストール
brew install openssl
brew install readline
※ここら辺はxcodeのバージョンが低いとエラーとなるため、xcodeも最新をいれたほうがよい
ライブラリを指定してインストール
$ RUBY_CONFIGURE_OPTS="--with-readline-dir=`brew --prefix readline` --with-openssl-dir=`brew --prefix openssl`" rbenv install 2.0.0-p353
※参考2.0.0-p353の場合
インストール確認
rbenv versions
ではインストール成功したので
関連ディレクトリの更新 ※しないといけない
rbenv rehash
使用するrubyバージョンを設定
rbenv global 2.0.0-p353
※参考2.0.0-p353の場合
これで完了
MacにRails環境を構築する方法をメモ
パッケージ管理ソフトはhomebrew、一からMacにRails環境を構築する方法と概要について。
Command Line Toolsインストール
Macで開発を行うためのコマンドラインツールをインストールする。
参考抜粋
——————————————————————————————————-
デベロッパ ポータルから直接、Xcode コマンド ライン ツールを .dmg ファイルとしてダウンロードすることができます。
Mac で https://developer.apple.com/downloads/index.action にアクセスします。
インストールの途中で Apple Developer としてログインするよう求められます。
[Downloads for Apple Developers]リストで、必要な[Command Line Tools]の項目を選択します。
——————————————————————————————————-
参考:
http://www.hulinks.co.jp/support/fortran/f_macosx018.html
Homebrewインストール
パッケージ管理ソフトのHomebrewをインストールする。Macにパッケージ類をインストールするためのソフト。
インストール
ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go/install)"
インストール確認(バージョンチェック)
brew -v
homebrewのバージョンが表示されれば成功
rbendインストール
Rubyのバージョン管理に使用するrbenvをインストールする。rubyのバージョンアップの切り替えをサポートするツール。
rbend,ruby-buildインストール
brew install rbenv ruby-build
rbendのパスを設定
echo 'eval "$(rbenv init -)"' >> ~/.bash_profile echo 'export PATH="$HOME/.rbenv/shims:$PATH"' >> ~/.bash_profile source ~/.bash_profile
Rubyインストール
rbenvを使いrubyのインストール可能バージョンを確認
rbenv install -l
インストールしたいrubyを選びインストール
rbenv install (バージョン名)
例) 2.0.0-p353のrubyをインストールする場合
rbenv install 2.0.0-p353
※The Ruby openssl extension was not compiled. Missing the OpenSSL lib?エラーとなる場合
参考http://to-developer.com/blog/?p=1197
インストール確認
rbenv versions
関連ディレクトリの更新 ※しないといけない
rbenv rehash
参考
http://dqn.sakusakutto.jp/2014/02/rbenv_rehash_what_it_does.html
使用するrubyバージョンを設定
rbenv global 2.0.0-p353
rubyのバージョン確認
ruby -v
ここで2.0.0になっていれば成功
Railsインストール
ruby標準のダウンロードツール(コマンド)gemを使いインストールする。
RDoc(Documentation from Ruby Source Files)をインストール
gem install rdoc
※これをいれずにRailsをインストールすると、「file ‘lib’ not found」がでる
sudo gem install rails
Rails開発で入れておいた方が良いライブラリ群のインストール
Rails開発で使いそうなライブラリもgemでインストールする。
gem install bundler gem install mysql gem install sqlite3 gem install jquery-rails gem install rake gem install activerecord-postgresql-adapter gem install uglifier gem install json
Railsプロジェクト作成
新規Railsプロジェクトのディレクトリ作成
rails new [プロジェクト名]
The following untracked working tree files would be overwritten by merge:の解決メモ
gitでpullやfetchしたリモートブランチをmergeする場合にこのエラーが発生する場合がある
The following untracked working tree files would be overwritten by merge: 追跡されていないファイルは、マージにより上書きされる
.gitignoreで指定されているファイルがリモートブランチに存在する場合にでるらしい。
このエラーとなると、ファイルの取得ができずに困る。
[追記2014/6/15]
根本解決ではないため、.gitignoreに追加されているファイルをリモートから削除するほうが良い気がする
解決方法
リモートブランチの状態をfetchで取得し、リセット(reset)コマンドを実行すると強制的に取得できる
•まずはfetch実行
git fetch origin
※originがリモートブランチの場合
•fetchしたブランチにリセット(–hardで作業ディレクトリ、ステージングディレクトリ)
git reset --hard FETCH_HEAD
”FETCH_HEAD” で最後にfetchしたブランチの先頭の意(git fetch. で入手したコミットの先頭)
この状態でpullまたはmergeしたかった状態に作業ディレクトリ、ステージングディレクトリともになっている
ソーシャルタイマー 〜 SNS予約投稿 〜
Google Playにアプリをリリースしました
https://play.google.com/store/apps/details?id=to.developer.socialtimer
アプリ詳細
Facebook/Twitterの予約投稿アプリ
機能:
•Facebook/Twitterの同時投稿 又は 対象snsのみが可能
•予約数に上限はなし
•写真1枚/コメントの時刻指定投稿が可能
•投稿時はノティフィケーションで通知
•端末自身で投稿 ※サーバを介さない
セキュリティ:
端末自身で投稿をするため、トークンや各種情報をサーバに送信しない
ためセキュリティ面で安全
注意:
端末自身で投稿するため、予約時刻の時点で端末の電源が入っている必要がある。
文字制限や連続投稿などの仕様は各種snsの仕様通りとなる。
例えば下記はアプリの仕様上判断できないためそのままスルーする。
- Twitterの場合、同じ内容の投稿は拒否される
- Facebookの場合、連続投稿を行うとタイムラインに反映しない場合がある
https://play.google.com/store/apps/details?id=to.developer.socialtimer
puttyで作成した公開鍵をopenssh(GitHubなど)キーへ変換する方法
windowsのputtygenで作成した公開鍵をそのままgithubなどのopenssh対応ツールにそのまま使う事ができない。githubの場合はadd keyでエラーになり登録ができない。
そのため一度puttyで作成したキーをssh-keygenで作成したのと同じ状態のopenssh対応版に変更する必要がある。
変換方法
ssh-keygen -i -f [変換前公開鍵putty] > [変換後公開鍵名 ※id_rsa.pubが一般的]
ssh-keygen -i の書式について
ssh-keygen -i [-m 鍵の形式 ] [-f 変換するidentityファイル ]
別プロセスでSharedPreferencesを参照する場合の更新情報取得方法についてメモ
SharedPreferencesを使いServiceで登録してActivityで開くや、その逆等の場合プロセスが違う事が原因か、最新情報を読み取れない事がある。
検証すると、読み込めるときもあるが違いがわからなかった。ただ実際のSharedPreferencesの中身は反映しているが、取得時にうまく取得できない、または前の情報を読み取るなどが見受けられたため、対応方法をメモする。
対応策
読み取るときにContext.MODE_MULTI_PROCESSを付ける事で解決する
context.getSharedPreferences(PREFERENCE_NAME,Context.MODE_PRIVATE | Context.MODE_MULTI_PROCESS);
http://developer.android.com/reference/android/content/Context.html#MODE_MULTI_PROCESS
検証する限り、その他バグ等はいまのところ見当たらないため、これで良いと思う
coffee-break
Don't write code that useless.
1日5杯はコーヒー、カフェオレ飲みます。狭心症のため安静にします☆松本 雄貴
Kotlinでサービスリリース目指す!
iOSでチャットアプリ作成中。自然言語解析LSIを習得中
Mac / Android・iOS / Rails / Oracle
2017年 Lpic L2取得
2012年 Android技術者資格取得
2010年 OracleMasterGold10g取得
2008年 CCNAQiitaもたまに投稿
https://qiita.com/y-matsumoto東京近郊で常駐開発探してる方はこちらよりご連絡ください
SES企業でパートナー会社を探している企業様はこちらよりご連絡ください
スプリットカメラ iOS / Android
音声認識で聞いた日付から曜日当てアプリ Android
ソーシャルタイマー Android
カテゴリー
- ActiveRecord (2)
- Android (52)
- AndroidStudio (10)
- Ansible (1)
- AWS (1)
- Bash (18)
- Blog (7)
- BootStrap (1)
- CentOS (16)
- Chef (1)
- css (2)
- Eclipse (5)
- error (1)
- Facebook (2)
- Firebase (1)
- FuelPHP (16)
- Git (22)
- GitHub (3)
- Gradle (2)
- GraphAPI (1)
- Grunt (1)
- heroku (2)
- illustrator (1)
- iOS (17)
- Java (4)
- Jenkins (1)
- jQuery (3)
- Kotlin (2)
- Mac (22)
- nginx (1)
- Node.js (3)
- peco (1)
- php (5)
- Python (1)
- Rails (16)
- Ruby (11)
- shell (1)
- SNS (1)
- Swift (2)
- tmux (2)
- Vagrant (6)
- Vim (6)
- windows (2)
- WordPress (3)
- zsh (4)
- フリーランス (1)
- ライブラリ (1)
- 勉強会 (2)
- 宣伝 (1)
- 未分類 (2)
最近の投稿
- [MAC]HighSierraでgitプッシュエラー「Unable to negotiate with xxx.xxx.xxx.xxx port xx: no matching cipher found. Their offer: aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour,aes192-cbc,aes256-cbc,rijndael-cbc@lysator.liu.se fatal: Could not read from remote repository.」
- [iOS]iOS11からFacebook,Twitter連携(シェアなど)廃止の対応方法
- [iOS]速報2017AppleSpecialEventのiOS11、iPhone8など発表内容について
- [iOS][Firebase]The default Firebase app has not yet been configured. Add `[FIRApp configure];
- [iOS]2017年9月リリースのiOS11で開発者が対応するべきこと
- 今人気の現金化サービスCASH(キャッシュ)を使ったレビュー
- [Pandoc][Mac]pandocでmarkdownからwordファイル作成
- [Android]映画サマーウォーズの聞いた日付(誕生日)から曜日当てをアプリ音声認識で簡単に実現
- [Android]起動しているActivityを取得するadb shell コマンド
- [Android][Kotlin]kotlin学習で参考になるサイト一覧
アーカイブ
- 2018年5月
- 2017年9月
- 2017年8月
- 2017年7月
- 2017年6月
- 2017年5月
- 2017年2月
- 2017年1月
- 2016年12月
- 2016年7月
- 2016年6月
- 2016年1月
- 2015年12月
- 2015年11月
- 2015年10月
- 2015年9月
- 2015年8月
- 2015年7月
- 2015年6月
- 2015年5月
- 2015年4月
- 2015年3月
- 2015年2月
- 2015年1月
- 2014年12月
- 2014年11月
- 2014年6月
- 2014年5月
- 2014年4月
- 2014年3月
- 2014年2月
- 2014年1月
- 2013年12月
- 2013年11月
- 2013年9月
- 2013年8月
- 2013年7月
- 2013年6月
- 2013年5月
- 2013年4月
- 2013年3月
- 2013年2月
- 2013年1月
- 2012年12月
- 2012年10月
- 2012年5月
- 2010年6月
おすすめ備忘録
- [Rails]MacにRails開発環境を構築(インストール)する
- [CentOS][Ruby][Rails]最新・安定版のRuby2.2.1(rbenv) / Rails4.1.1環境を構築する
- [Ruby]エラー:Inspect or clean up the working tree at /tmp/ruby-build・・・
- [CentOS][Git]gitのmakeインストールでバージョンを最新バージョン[1.9.0]にする
- [Ruby][Mac]The Ruby openssl extension was not compiled. Missing the OpenSSL lib?エラー
エントリ