From: Naoki Oshiro Date: 2014-08-31T09:52:04+09:00 Subject: [ruby-list:49939] [質問] Vine-4.2でのRuby構築について 大城です。 だいぶ古い環境の話ですみませんが、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/