From: Naoki Oshiro Date: 2014-09-15T22:38:58+09:00 Subject: [ruby-list:49970] Re: [質問] Vine-4.2でのRuby構築について 大城です。 Vine-4.2でtest_fork.rbのあたりを眺めていたのですが結局原因まではわからず、Vine-5.2のインストールCDから環境をアップグレードできたので、その環境で再度Rubyを構築し直してみたところmake testまで問題なく終了しました。(Vine側のカーネルの問題だったんでしょうかね…??)。 ↓更新後のVine-5.2環境でのmake test時のバージョン表示 gcc version 4.1.2 (4.1.3 prerelease 20080708) (Vine Linux 4.1.2-21vl5) 2014年8月31日 9:52 Naoki Oshiro : > 大城です。 > > だいぶ古い環境の話ですみませんが、Vine-4.2上でRailsを使おうとしており、それに合わせてRubyの環境を更新しようとしています。 > > ruby-1.9.3, ruby-2.1.2を試していますが、make > testに失敗してしまいます。いろいろなエラーが出ますが、test_fork.rbやtest_thread.rbで失敗する(ruby-2.1.2時のエラーを後ろに付けます)ようで、その関連からかRailsを強引に試した場合でもプロセスをいくつも生成したまま動作停止するようでした。 > > Vine-4.2での標準のgccが古いのかとgcc-4.7.4を自前ビルド(gcc-4.8, > 4.9はコンパイルだったか動作だったのエラー)してRubyの再構築をしてみましたが、こちらでもmake testに失敗します。 > > 利用しているマシン自体の環境がおかしくなっているのかと、VirtualBox上の仮想マシンにも新規にVine-4.2を入れて試してみましたが、こちらでも同様のエラー止まりました。Vine-5.2ではmake > testも問題ありません(gccは4.1.2)。 > > ざっくりした質問になってしまい、またVine-4.2が古過ぎるのかもしれませんが、この環境上で動作させるヒント等あればご教示下さい。 > > よろしくお願いします。 > > 使用環境やエラーメッセージは以下(↓)となります。 > > $ cat /etc/issue > > Vine Linux 4.2 (Lynch Bages) > Kernel 2.6.16-0vl76.27 on an i686 > > [ruby-2.1.2]$ gmake test > CC = gcc > LD = ld > LDSHARED = gcc -shared > CFLAGS = -O3 -fno-fast-math -ggdb3 -Wall -Wno-unused-parameter > -Wno-parentheses -Wno-long-long -Wunused-variable -Wpointer-arith > -Wwrite-strings -Wimplicit-function-declaration -ansi > -std=iso9899:199409 > XCFLAGS = -D_FORTIFY_SOURCE=2 -msse2 -mfpmath=sse -DRUBY_EXPORT -fPIE > CPPFLAGS = -I. -I.ext/include/i686-linux -I./include -I. > DLDFLAGS = -pie > SOLIBS = > /usr/lib/gcc-lib/i386-vine-linux/3.3.6/specs から spec を読み込み中 > コンフィグオプション: ../configure --prefix=/usr --mandir=/usr/share/man > --infodir=/usr/share/info --enable-shared --enable-threads=posix > --disable-checking --with-system-zlib --enable-__cxa_atexit > --host=i386-vine-linux > スレッドモデル: posix > gcc バージョン 3.3.6 release (Vine Linux 3.3.6-0vl7) > > test succeeded > #251 test_fork.rb:12:in `': > begin > children = (1..10).map{ > Thread.start{fork{}}.value > } > while !children.empty? and pid = Process.wait > children.delete(pid) > end > rescue NotImplementedError > end > #=> not finished in 10 seconds [ruby-core:22158] > test_thread.rb| > > -- > ============================================= > OSHIRO Naoki: oshiro@mibai.tec.u-ryukyu.ac.jp > http://mibai.tec.u-ryukyu.ac.jp/~oshiro/ -- ============================================= OSHIRO Naoki: oshiro@mibai.tec.u-ryukyu.ac.jp http://mibai.tec.u-ryukyu.ac.jp/~oshiro/