質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Q&A

解決済

2回答

2686閲覧

Ruby on Railsをcdからインストールできません。 TRAP_BEG undeclared とTRAP_END undeclared表示されます。解決の仕方がわかりません。

algorithm

総合スコア11

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Ruby on Rails

Ruby on Railsは、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

0グッド

0クリップ

投稿2016/08/15 12:59

編集2016/08/18 12:12

###前提・実現したいこと

ruby(64bitの最新版)とDevKitとSSLのpemを使って、rails をコマンドプロントでインストールしようとしました。 そうしたら、以下の様なエラーが出ました。エラーは以下の2つです。

###発生している問題・エラーメッセージ

selector.c:355:9: error: 'TRAP_BEG' undeclared (first use in this function) selector.c:355:9: note: each undeclared identifier is reported only once for each function it appears in selector.c:357:9: error: 'TRAP_END' undeclared (first use in this function)

###該当のソースコード

コマンドプロントは gem install rails で実行しました。

###試したこと
ruby や devkit などを削除して3度入れなおして実行しました。同様のエラーが出たいたので、削除したファイルが原因ではないと思います。

###補足情報(言語/FW/ツール等のバージョンなど)
windows10 ruby 64bit 2.3.1
DevKit-mingw64-64-4.7.2-20130224-1432-sfx.exe
rubyinstaller-2.3.1-x64.exe

参考したサイトは
https://www.oiax.jp/rails/zakkan/rails_4_2_installation_on_windows.html
Ruby on Rails 4.2 を Windows にインストールする手順をかなり丁寧に説明してみました

書籍は、
Ruby on Rails 5.0 インストール手順書
改訂3版 基礎 Ruby on Rails 基礎シリーズ

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

flied_onion

2016/08/15 15:04

ダウンロードした、rubyとdevkitのファイル名は記載できますか? インストールに際して参考にしたサイトもあれば教えてください。
flied_onion

2016/08/18 13:34

同じファイルで再現するかちょっと今からやってみます。ただ、そのサイトと私のやったことあるやり方違う(そこまで大きな差ではない)ので、最初は私のやり方でやります。「できた」=「railsのプロジェクトを作って起動できる」とします。
guest

回答2

0

できました。
ruby dk.rb init と ruby dk.rb install をDevkitに実行していないのが原因でした。

投稿2016/09/06 11:03

algorithm

総合スコア11

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

サイトの方法と、そこまで大きな差ではない
と、思ったけど大幅にちがうところが一カ所・・・。
インストールするかバッチで処理するかの違いですが。

加えて、SQLiteで苦戦してしまいました。もうちょっと楽な方法がありそう(そしてそのうち解消されそう)
SSL pemには触れていません。が、とりあえずrailsのインストールができないよりは良いかと思います。

やり直して綺麗に整理したい気持ちもありますが、時間ないので、無駄な手順が含まれているかもしれません。

うまくいかなかったらすいませんが、とりあえず私の環境では、rails s までは行きました。


ダウンロード

7zip x64 (ソースの解凍に使います。バージョンは問いませんが最新版が脆弱性修正されているのでその時の最新版で。)

rubyinstaller-2.3.1-x64.exe
DevKit-mingw64-64-4.7.2-20130224-1432-sfx.exe
※ 今日DLした。

  • Windows 10 pro (Aniversary update まだ適用してない)

他のバージョンのrubyは入っていない

7zip

普通にインストール。

ruby

rubyinstaller-2.3.1-x64.exe

  • ruby インストール先

C:\Ruby23-x64
環境変数PATHを設定にチェック。

DevKitのインストール

DevKit-mingw64-64-4.7.2-20130224-1432-sfx.exe を実行して、以下の解凍先を入力してOK

  • DevKit

解凍先c:\Ruby23-x64\DevKit

コマンドプロンプト(一般権限)

c:\Users\省略> c: c:\Users\省略> cd C:\Ruby23-x64\DevKit C:\Ruby23-x64\DevKit> ruby dk.rb init [INFO] found RubyInstaller v2.3.1 at C:/Ruby23-x64 Initialization complete! Please review and modify the auto-generated 'config.yml' file to ensure it contains the root directories to all of the installed Rubies you want enhanced by the DevKit.

(複数バージョンのRubyを入れている場合、ここでconfig.ymlを書き換えたほうがいい場合もあるが今回は想定しないので、必要なら各自で調べる。)

C:\Ruby23-x64\DevKit>ruby dk.rb install [INFO] Updating convenience notice gem override for 'C:/Ruby23-x64' [INFO] Installing 'C:/Ruby23-x64/lib/ruby/site_ruby/devkit.rb'

アップデートとbundlerのインストール

C:\Ruby23-x64\DevKit> gem update --system C:\Ruby23-x64\DevKit> gem install bundler

※ 実は実際にやってたときは、これはrailsの後に入れたが、順序は特に問題ないと思われる。

railsのインストール

※ このときのバージョンは 5.0.1。将来ここを参考にしたときは、5.0.1で試した方が良い(後述のsqliteなどのビルドがあるため)

C:\Ruby23-x64\DevKit> mkdir c:\tt44394\work C:\Ruby23-x64\DevKit> cd c:\tt44394\work C:\tt44394\work> gem install rails ※ ここでWindowsファイアウォールの警告がでたり。許可してあげる(アンチウィルスソフトにもよる)。 Fetching: i18n-0.7.0.gem (100%) Successfully installed i18n-0.7.0 Fetching: thread_safe-0.3.5.gem (100%) Successfully installed thread_safe-0.3.5 Fetching: tzinfo-1.2.2.gem (100%) 略 Successfully installed sprockets-rails-3.1.1 Fetching: rails-5.0.0.1.gem (100%) Successfully installed rails-5.0.0.1 37 gems installed

nokogiriのインストール

※ 後述の「参考」の先に注意書きがあるように、これは最新版では不要と思われます。
※ とばしておいて、nokogiri関連エラーがでたらでもいいとは思います。

※ 同じ手順でやりたい場合はやっても構いません。あとは古いバージョンだった場合対策とかに載せておきます。

http://xmlsoft.org/sources/win32/64bit/

iconv-1.14-win32-x86_64.7z
libxml2-2.9.3-win32-x86_64.7z
libxslt-1.1.28-win32-x86_64.7z

のダウンロード(このときの最新版)

C:\Ruby23-x64\libxml2 ディレクトリを作成、ダウンロードした 3ファイルを置く。
エクスプローラで3ファイルを選択し、
右クリック>7zip>Extract Here(ここに展開)

bin, include, lib, shareディレクトリができてる(3ファイルとも似たような構成になっていて、まぜて展開したかったので3ファイル同時に解凍した)

コマンドプロンプトにて以下を実行、円マーク(バックスラッシュ)じゃない事に注意。

C:\Ruby23-x64>set lx2=c:/Ruby23-x64/libxml2 C:\Ruby23-x64>gem install nokogiri --platform=ruby -- --use-system-libraries --with-iconv-include=%lx2%/include --with-iconv-lib=%lx2%/lib --with-xml2-include=%lx2%/include/libxml2 --with-xml2-lib=%lx2%/lib --with-xslt-include=%lx2%/include --with-xslt-lib=%lx2%/lib C:\Ruby23-x64>gem install nokogiri C:\Ruby23-x64>mkdir C:\Ruby23-x64\lib\ruby\gems\2.3.0\gems\nokogiri-1.6.8-x64-mingw32\lib\nokogiri\2.3 C:\Ruby23-x64>copy C:\Ruby23-x64\lib\ruby\gems\2.3.0\extensions\x64-mingw32\2.3.0\nokogiri-1.6.8\nokogiri\nokogiri.so C:\Ruby23-x64\lib\ruby\gems\2.3.0\gems\nokogiri-1.6.8-x64-mingw32\lib\nokogiri\2.3 C:\Ruby23-x64>copy C:\Ruby23-x64\libxml2\lib\*.dll c:\Ruby23-x64\bin

※ コピーは上書きになるかもしれません。

SQLite3 のコンパイル、配置

railsをインストールした時点で、入るは入るものの、gems/lib に 2.3のディレクトリがないので自前でビルドする。
これは、以下のエラーへの対応で行った。

c:\tt44394\work\myApp>rails s C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/sqlite3-1.3.11-x64-mingw32/lib/sqlite3.rb:6:in `require': cannot load such file -- sqlite3/sqlite3_native (LoadError)

リソースの取得と配置

prebuildバイナリとautoconfソースを入手 (http://www.sqlite.org/download.html) 。
ただしrailsが使おうとするバージョンに合わせるため、直接バージョン指定してダウンロードする。

http://www.sqlite.org/2016/sqlite-dll-win64-x64-3130000.zip

http://www.sqlite.org/2016/sqlite-autoconf-3130000.tar.gz

  • sqlite-dll-win64-x64-3130000.zip

中身を C:\Ruby23-x64\bin に置く。 (不要かもしれないが、これをやらないとビルドに失敗するというのを見かけたので)

  • sqlite-autoconf-3130000.tar.gz

7zipでも解凍可能(ただ、tarとgzで2回解凍することに)
C:\Ruby23-x64\sqlite\sqlite-autoconf-3130000 に解凍する。(C:\Ruby23-x64\sqlite\sqlite-autoconf-3130000\tea\ とできるように)

DevKitのMSYSでコンパイル

C:\Ruby23-x64\DevKit\msys.bat を起動

コンパイル。それぞれ多少時間かかります。
最後のinstallのオプションのパスを間違えないように注意。

UserName@MachineName ~ $ cd /c/Ruby23-x64/sqlite/sqlite-autoconf-3130000/ UserName@MachineName /c/Ruby23-x64/sqlite/sqlite-autoconf-3130000 $ ./configure UserName@MachineName /c/Ruby23-x64/sqlite/sqlite-autoconf-3130000 $ make UserName@MachineName /c/Ruby23-x64/sqlite/sqlite-autoconf-3130000 $ make install UserName@MachineName /c/Ruby23-x64/sqlite/sqlite-autoconf-3130000 $ gem install sqlite3 --platform=ruby -- --with-sqlite3-include=/c/Ruby23-x64/sqlite/sqlite-autoconf-3130000/ --with-sqlite3-lib=/c/Ruby23-x64/sqlite/sqlite-autoconf-3130000/.libs/

完了したら閉じてOK。

成果のコピー

  • C:\Ruby23-x64\lib\ruby\gems\2.3.0\gems\sqlite3-1.3.11-x64-mingw32\lib\sqlite3

2.3ディレクトリを作成。

  • C:\Ruby23-x64\lib\ruby\gems\2.3.0\gems\sqlite3-1.3.11\lib\sqlite3\sqlite3_native.so

を、今作った C:\Ruby23-x64\lib\ruby\gems\2.3.0\gems\sqlite3-1.3.11-x64-mingw32\lib\sqlite3\2.3\
にコピー

  • C:\Ruby23-x64\DevKit\local\bin\libsqlite3-0.dll

C:\Ruby23-x64\bin\ にコピー(こちらは不要かもしれない)

railsアプリケーションの作成

c:\tt44394\work> rails new myApp create create README.md create Rakefile create config.ru create .gitignore ※ 省略 Installing sass-rails 5.0.6 Bundle complete! 12 Gemfile dependencies, 57 gems now installed. Use `bundle show [gemname]` to see where a bundled gem is installed.

railsアプリケーションの起動

c:\tt44394\work>dir ドライブ C のボリューム ラベルは SSD です ボリューム シリアル番号は 8AF0-B3D9 です c:\tt44394\work のディレクトリ 2016/08/18 22:52 <DIR> . 2016/08/18 22:52 <DIR> .. 2016/08/18 22:52 <DIR> myApp 0 個のファイル 0 バイト 3 個のディレクトリ 247,758,794,752 バイトの空き領域 c:\tt44394\work>cd myApp c:\tt44394\work\myApp> rails s

もし、SQLiteでエラーがでたら、

c:\tt44394\work>gem uninstall sqlite3

で2つ出ると思うので、sqlite3をいったん全部消し

c:\tt44394\work>gem install sqlite3

を行い、

C:\Ruby23-x64\lib\ruby\gems\2.3.0\gems\sqlite3-1.3.11-x64-mingw32\lib\sqlite3\2.3\
が無ければ、また作って sqlite3_native.soをコピーしてあげてください。

既存のrailsアプリがあったら

起動しないので、無いとは思いますが、もしあってうまく起動できない(SQLite3がらみ)場合は、
Gemfile.lockを見て、

  • sqlite3が指定しているバージョンが、作業で構築したバージョンと一致しているか、
  • nokogiriも同様に一致しているか
  • その他 -x64-mingw32 系のバージョンが大丈夫か

確認するといいかもしれません。

参考

いずれも、ライブラリ変えてたり、typo修正したり、オリジナルとは少し変わっています。

nokogiri:
Windows(64bit) で Ruby 2.2.3 + Rails 4.2.4
nokogiri のバージョンが上がった(最新は 1.6.7.2)ことにより、この問題は起きなくなりました とあるので、不要かもしれません。

sqlite3:
stackoverflow : How do I install sqlite3 for Ruby on Windows?
WilliamsのAnswer

投稿2016/08/18 16:53

flied_onion

総合スコア2604

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

algorithm

2016/08/19 14:49

回答有り難うございました。 上記のやり方を試したあと、4.2.7.1 - August 10, 2016 (1.41 MB)をインストールしたらできました。 その後5.0.0.0を試してもできなかったので(同様のエラーがでる)、現状私のパソコンではインストール出来ないのかもしれません。 とりあえず、インストールできたバージョンで利用します。
flied_onion

2016/08/19 14:56

そうですか、残念です。 私の環境ではインストールしたら 5.0.0.1だったので、その辺の差もあるかもしれませんね。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問