[#30408] Ruby 1.8.6 preview2 has been released — "Akinori MUSHA" <knu@...>

 Ruby 1.8.6 preview2 をリリースしました。

20 messages 2007/02/24
[#30414] fail to autoload at $SAFE==4 (Re: Ruby 1.8.6 preview2 has been released) — Hidetoshi NAGAI <nagai@...> 2007/02/25

永井@知能.九工大です.

[#30418] Re: fail to autoload at $SAFE==4 (Re: Ruby 1.8.6 preview2 has been released) — Nobuyoshi Nakada <nobu@...> 2007/02/25

なかだです。

[ruby-dev:30323] Re: ext/tk/lib causes an error

From: Nobuyoshi Nakada <nobu@...>
Date: 2007-02-13 00:38:50 UTC
List: ruby-dev #30323
なかだです。

At Mon, 12 Feb 2007 12:39:49 +0900,
sheepman wrote in [ruby-dev:30322]:
> trunkをmakeすることができません。tk関連でエラーが出ます。
> 以下がエラーメッセージです。
> 
> $ make
> (中略)
> cp ../../../ruby/ext/tk/lib/remote-tk.rb ../../.ext/common
> cp ../../../ruby/ext/tk/lib/tkcanvas.rb ../../.ext/common
> cp ../../../ruby/ext/tk/lib/tk/labelframe.rb ../../.ext/common/tk
> cp: `../../.ext/common/tk' にアクセスしています: ディレクトリではありません
> make[1]: *** [../../.ext/common/tk/labelframe.rb] エラー 1
> make[1]: ディレクトリ `/home/sheepman/ruby/src/ruby-build/ext/tk' から出ます
> make: *** [all] エラー 1

手元では再現できませんでした。こんな感じです。

make[2]: ディレクトリ `/home/nobu/src/ruby/trunk/i486-linux/ext/tk' に入ります
gcc -I. -I../.. -I../../../src -I../../../src/ext/tk -DRUBY_EXTCONF_H=\"extconf.h\" -I/usr/include/tcl8.4  -DUSE_TCL_STUBS -DUSE_TK_STUBS -fPIC -pipe -march=i686 -ggdb -g3 -O3 -fomit-frame-pointer -mpreferred-stack-boundary=2  -fPIC  -c ../../../src/ext/tk/stubs.c
gcc -I. -I../.. -I../../../src -I../../../src/ext/tk -DRUBY_EXTCONF_H=\"extconf.h\" -I/usr/include/tcl8.4  -DUSE_TCL_STUBS -DUSE_TK_STUBS -fPIC -pipe -march=i686 -ggdb -g3 -O3 -fomit-frame-pointer -mpreferred-stack-boundary=2  -fPIC  -c ../../../src/ext/tk/tcltklib.c
gcc -shared -rdynamic -Wl,-export-dynamic   -L'../..' -o ../../../ext/i686-linux/tcltklib.so stubs.o tcltklib.o  -Wl,-R -Wl,/usr/lib -L/usr/lib -L. -lruby -ltkstub8.4 -ltclstub8.4 -lX11 -ldl  -lpthread -ldl -lcrypt -lm   -lc
mkdir -p ../../../ext/common/tk
mkdir -p ../../../ext/common/tkextlib/vu
mkdir -p ../../../ext/common/tkextlib/blt/tile
mkdir -p ../../../ext/common/tkextlib/itk
mkdir -p ../../../ext/common/tkextlib/itcl

生成されたMakefileを見せてもらったほうがいいかも。

また、../../.ext/common/tkはどうなっていますか。

> これは、ext/tk/lib 以下に直接ファイルが置いてあること(とextmk.rbがそれに対応していない?こと)が
> 原因なんじゃないかと思います。例えば、OpenSSL では ext/openssl/lib/openssl にファイルが
> 置かれています。ruby のビルドの仕組みがよくわかってないので憶測ですが。

それならext/digest/lib/digest.rbが先に引っかかるはずと思います
が。

-- 
--- 僕の前にBugはない。
--- 僕の後ろにBugはできる。
    中田 伸悦

In This Thread