trunk ã§ã€ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ãƒ•ァイルã®ã‚¢ã‚¯ã‚»ã‚¹æ¨©ãŒé©åˆ‡ã«è¨å®šã•れãªã„ã‚‚ã®ãŒ
ã‚りã¾ã™ã€‚
Index: instruby.rb
— instruby.rb (リビジョン 15429)
+++ instruby.rb (作æ¥ã‚³ãƒ”ー)
@@ -123,8 +123,9 @@
end
def install_recursive(srcdir, dest, options = {})
- noinst = options[:no_install]
- glob = options[:glob] || “*”
- opts = options.clone
- noinst = opts.delete(:no_install)
- glob = opts.delete(:glob) || “*”
subpath = srcdir.size…-1
Dir.glob("#{srcdir}/**/#{glob}") do |src|
case base = File.basename(src)
@@ -143,7 +144,7 @@
makedirs(d)
else
makedirs(File.dirname(d))
-
install src, d, opts
end
end
end
@@ -224,15 +225,15 @@
if noinst = CONFIG[“no_install_files”] and noinst.empty?
noinst = nil
end
- install_recursive("#{extout}/#{CONFIG[‘arch’]}", archlibdir,
:no_install => noinst)
- install_recursive("#{extout}/include/#{CONFIG[‘arch’]}",
archhdrdir, :glob => “*.h”)
- install_recursive("#{extout}/#{CONFIG[‘arch’]}", archlibdir,
:no_install => noinst, :mode => 0755)
- install_recursive("#{extout}/include/#{CONFIG[‘arch’]}",
archhdrdir, :glob => “*.h”, :mode => 0644)
end
install?(:ext, :comm, :‘ext-comm’) do
puts “installing extension scripts”
hdrdir = rubyhdrdir + “/ruby”
makedirs [rubylibdir, sitelibdir, vendorlibdir, hdrdir]
- install_recursive("#{extout}/common", rubylibdir)
- install_recursive("#{extout}/include/ruby", hdrdir, :glob => “*.h”)
- install_recursive("#{extout}/common", rubylibdir, :mode => 0644)
- install_recursive("#{extout}/include/ruby", hdrdir, :glob => “*.h”,
:mode => 0644)
end
end
@@ -243,7 +244,7 @@
ridatadir = File.join(CONFIG[‘datadir’],
‘ri/$(MAJOR).$(MINOR).$(TEENY)/system’)
Config.expand(ridatadir)
makedirs [ridatadir]
- install_recursive($rdocdir, ridatadir)
- install_recursive($rdocdir, ridatadir, :mode => 0644)
end
end
@@ -324,7 +325,7 @@
noinst << “win32.h”
end
noinst = nil if noinst.empty?
- install_recursive(“include”, rubyhdrdir, :no_install => noinst, :glob
=> “*.h”)
- install_recursive(“include”, rubyhdrdir, :no_install => noinst, :glob
=> “*.h”, :mode => 0644)
end
install?(:local, :comm, :man) do
e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B
In message “Re: [ruby-dev:33699] trunk:
e$B%$%s%9%H!<%k%U%!%$%k$N%”%/%;%98"e(B"
on Mon, 11 Feb 2008 22:29:22 +0900, pegacorn
[email protected] writes:
|trunk e$B$G!"%$%s%9%H!<%k%U%!%$%k$N%"%/%;%98"$,E,@[email protected]_Dj$5$l$J$$$b$N$,e(B
|e$B$"$j$^$9!#e(B
e$B<h$j9~$_$^$9!#e(B
e$B$3$s$P$s$O!#e(B
In message [email protected]
on Tue, 12 Feb 2008 12:12:40 +0900,
Yukihiro M. [email protected] wrote:
e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B
In message “Re: [ruby-dev:33699] trunk: e$B%$%s%9%H!<%k%U%!%$%k$N%”%/%;%98"e(B"
on Mon, 11 Feb 2008 22:29:22 +0900, pegacorn [email protected] writes:
|trunk e$B$G!"%$%s%9%H!<%k%U%!%$%k$N%"%/%;%98"$,E,@[email protected]_Dj$5$l$J$$$b$N$,e(B
|e$B$"$j$^$9!#e(B
e$B<h$j9~$_$^$9!#e(B
e$B$3$N%Q%C%A$r8+$F$$$F!"e(B
- install_recursive("#{extout}/#{CONFIG[‘arch’]}", archlibdir,
:no_install => noinst, :mode => 0755)
- install_recursive("#{extout}/include/#{CONFIG[‘arch’]}",
archhdrdir, :glob => “*.h”, :mode => 0644)
:mode =>
[email protected]$O%U%!%$%k$N%"%/%;%98"[email protected]$H;W$&$N$G$9$,!“e(B0755/0644e$B$G$O$J$/e(B
e$B$Fe(B0555/0444e$B$H$$$C$?CM$K$7$?$/$J$k%1!<%9$b$”$j$^$9!#e(B
e$B$3$NJU$j!"=`%^%8%C%/!&%J%s%P!<$G$O$J$/!"2?$+%G%U%)%k%HI=$9JQ?t$+2?$+$Ke(B
e$B$G$-$J$$$b$s$G$7$g$&$+e(B?
[email protected]$G$9!#e(B
At Thu, 14 Feb 2008 00:14:24 +0900,
Takahiro K. wrote in [ruby-dev:33766]:
:mode => [email protected]$O%U%!%$%k$N%"%/%;%98"[email protected]$H;W$&$N$G$9$,!“e(B0755/0644e$B$G$O$J$/e(B
e$B$Fe(B0555/0444e$B$H$$$C$?CM$K$7$?$/$J$k%1!<%9$b$”$j$^$9!#e(B
e$B$3$NJU$j!"=`%^%8%C%/!&%J%s%P!<$G$O$J$/!"2?$+%G%U%)%k%HI=$9JQ?t$+2?$+$Ke(B
e$B$G$-$J$$$b$s$G$7$g$&$+e(B?
make
installe$B$N:]$K$=$l$>$le(BINSTALL_PROG_MODEe$B$He(BINSTALL_DATA_MODEe$B$Ge(B
e$B;XDj$G$-$k$h$&$K$7$^$7$?!#e(Bconfiguree$B$G;XDj$G$-$k$[$&$,$$$$$G$7$ge(B
e$B$&$+!#e(B
pegacorn ã§ã™ã€‚
From: pegacorn [email protected]
Date: Sat, 16 Feb 2008 13:47:25 +0900
Message-Id: [email protected]
/~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
INSTALL_PROG_MODE=0555 ã¨ã™ã‚‹ã¨ã€ã‚µãƒ–ディレクトリーを作æˆï¼ãƒ•ァイルを
コピーã™ã‚‹å‰ã«ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ¼ãŒ 0555 ã«ãªã£ã¦ã—ã¾ã£ã¦ã€
Errno::EACCES ã«ãªã‚Šã¾ã™ã€‚
サブディレクトリーã®ä½œæˆã«å¤±æ•—ã™ã‚‹ã®ã¯ã€fileutils ã®å•題ã‹ã‚‚ã—れã¾ã›ã‚“ãŒâ€¦
ã¾ã 調ã¹ã¦ã„ã¾ã›ã‚“。
サブディレクトリーã®ä½œæˆã«å¤±æ•—ã™ã‚‹ã®ã¯ã€fileutils ã®å•題ã®ã‚ˆã†ã§ã™ã€‚
ã§ã™ã®ã§ã€å…ˆç¨‹ã® instruby.rb ã¸ã®ãƒ‘ッãƒã¯å–り消ã—ã¾ã™ã€‚
FreeBSD/Cygwin ã§ mkdir -p -m 0555 dir1/dir2/dir3 ã¨ã™ã‚‹ã¨ã€
dir3 㯠0555 ã«ãªã‚Šã¾ã™ãŒã€dir1, dir2 㯠0755 ã«ãªã‚Šã¾ã™ã€‚
Index: lib/fileutils.rb
— lib/fileutils.rb (リビジョン 15496)
+++ lib/fileutils.rb (作æ¥ã‚³ãƒ”ー)
@@ -212,12 +212,15 @@
stack.push path
path = File.dirname(path)
end
ãŸã ã€fileutils ã‚’ä¿®æ£ã—ã¦ã‚‚ instruby ãŒã•らã«ä¸‹ä½ã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ¼ã‚’
作æˆã—よã†ã¨ã—ã¦çµå±€ Errno::EACCES ã«ãªã‚‹ã®ã§ã€ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã®å•題ã¯
解決ã—ãªã„ã®ã§ã™ãŒâ€¦
installing binary commands
/home/user/work-reposs/ruby/trunk/lib/fileutils.rb:243:in `mkdir’:
Permission denied - /home/user/work-usr/ruby/trunk/lib/ruby
(Errno::EACCES)
makedirs [/home/user/work-usr/ruby/trunk/lib] ã¯æˆåŠŸã™ã‚‹ã‚ˆã†ã«ãªã‚‹ãŒã€
ãã®å¾Œã® makedirs [/home/user/work-usr/ruby/trunk/lib/ruby] ã¯å¤±æ•—ã™ã‚‹ã€‚
pegacorn ã§ã™ã€‚
From: Nobuyoshi N. [email protected]
Date: Thu, 14 Feb 2008 00:53:01 +0900
Message-Id: [email protected]
/~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Takahiro K. wrote in [ruby-dev:33766]:
:mode => ã®å…ˆã¯ãƒ•ァイルã®ã‚¢ã‚¯ã‚»ã‚¹æ¨©ã ã¨æ€ã†ã®ã§ã™ãŒã€0755/0644ã§ã¯ãªã
ã¦0555/0444ã¨ã„ã£ãŸå€¤ã«ã—ãŸããªã‚‹ã‚±ãƒ¼ã‚¹ã‚‚ã‚りã¾ã™ã€‚
ã“ã®è¾ºã‚Šã€æº–マジック・ナンãƒãƒ¼ã§ã¯ãªãã€ä½•ã‹ãƒ‡ãƒ•ォルト表ã™å¤‰æ•°ã‹ä½•ã‹ã«
ã§ããªã„ã‚‚ã‚“ã§ã—ょã†ã‹?
make installã®éš›ã«ãれãžã‚ŒINSTALL_PROG_MODEã¨INSTALL_DATA_MODEã§
指定ã§ãるよã†ã«ã—ã¾ã—ãŸã€‚
INSTALL_PROG_MODE=0555 ã¨ã™ã‚‹ã¨ã€ã‚µãƒ–ディレクトリーを作æˆï¼ãƒ•ァイルを
コピーã™ã‚‹å‰ã«ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ¼ãŒ 0555 ã«ãªã£ã¦ã—ã¾ã£ã¦ã€
Errno::EACCES ã«ãªã‚Šã¾ã™ã€‚
サブディレクトリーã®ä½œæˆã«å¤±æ•—ã™ã‚‹ã®ã¯ã€fileutils ã®å•題ã‹ã‚‚ã—れã¾ã›ã‚“ãŒâ€¦
ã¾ã 調ã¹ã¦ã„ã¾ã›ã‚“。
% make install INSTALL_PROG_MODE=0555 INSTALL_DATA_MODE=0444
./miniruby -I./lib ./instruby.rb --make=“make” --dest-dir=""
–extout=".ext" --mflags="" --make-flags="" --data-mode=0444
–prog-mode=0555 --installed-list .installed.list --mantype=“doc”
installing binary commands
/home/user/work-reposs/ruby/trunk/lib/fileutils.rb:240:in mkdir': Permission denied - /home/user/work-usr/ruby (Errno::EACCES) from /home/user/work-reposs/ruby/trunk/lib/fileutils.rb:240:in
fu_mkdir’
from /home/user/work-reposs/ruby/trunk/lib/fileutils.rb:217:in block (2 levels) in mkdir_p' from /home/user/work-reposs/ruby/trunk/lib/fileutils.rb:215:in
reverse_each’
from /home/user/work-reposs/ruby/trunk/lib/fileutils.rb:215:in block in mkdir_p' from /home/user/work-reposs/ruby/trunk/lib/fileutils.rb:201:in
each’
from /home/user/work-reposs/ruby/trunk/lib/fileutils.rb:201:in
mkdir_p' from ./instruby.rb:130:in
makedirs’
from ./instruby.rb:200:in block in <main>' from ./instruby.rb:375:in
call’
from ./instruby.rb:375:in block (2 levels) in <main>' from ./instruby.rb:372:in
each’
from ./instruby.rb:372:in block in <main>' from ./instruby.rb:371:in
each’
from ./instruby.rb:371:in `’
*** Error code 1
Stop in /home/user/work-reposs/ruby/trunk.
å–り敢ãˆãšä»¥ä¸‹ã®ã‚ˆã†ã«ã™ã‚‹ã¨â€¦
Index: instruby.rb
— instruby.rb (リビジョン 15496)
+++ instruby.rb (作æ¥ã‚³ãƒ”ー)
@@ -127,7 +127,7 @@
File.directory?(realdir)
end
end.compact!
- super(dirs, :mode => $prog_mode) unless dirs.empty?
- super(dirs, :mode => ($prog_mode|0200)) unless dirs.empty?
end
def install_recursive(srcdir, dest, options = {})
今度ã¯ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«å…ˆã«ã‚³ãƒ”ーã—ãŸã‚³ãƒžãƒ³ãƒ‰ã‚¹ã‚¯ãƒªãƒ—ト㮠shebang ã‚’
æ›¸ãæ›ãˆã‚ˆã†ã¨ã—㦠Errno::EACCES ã«ãªã‚Šã¾ã™ã€‚
% make install INSTALL_PROG_MODE=0555 INSTALL_DATA_MODE=0444
./miniruby -I./lib ./instruby.rb --make=“make” --dest-dir=""
–extout=".ext" --mflags="" --make-flags="" --data-mode=0444
–prog-mode=0555 --installed-list .installed.list --mantype=“doc”
installing binary commands
installing command scripts
./instruby.rb:162:in initialize': Permission denied - /home/user/work-usr/ruby/trunk/bin/rake (Errno::EACCES) from ./instruby.rb:162:in
open’
from ./instruby.rb:162:in open_for_install' from ./instruby.rb:282:in
block (2 levels) in ’
from ./instruby.rb:269:in each' from ./instruby.rb:269:in
block in ’
from ./instruby.rb:375:in call' from ./instruby.rb:375:in
block (2 levels) in ’
from ./instruby.rb:372:in each' from ./instruby.rb:372:in
block in ’
from ./instruby.rb:371:in each' from ./instruby.rb:371:in
’
*** Error code 1
Stop in /home/user/work-reposs/ruby/trunk.
(1)INSTALL_PROG_MODE=0555 ã¨ã—ãŸå ´åˆã€ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªãƒ¼ã‚‚ 0555 ã¨ã—ãŸã„ï¼
ã™ã‚‹ã¹ãã§ã—ょã†ã‹ï¼Ÿ
(2)コピー元ã®ã‚³ãƒžãƒ³ãƒ‰ã‚¹ã‚¯ãƒªãƒ—ト㮠shebang ã‚’æ›¸ãæ›ãˆã¦ã‹ã‚‰ã‚³ãƒ”ーã™ã‚‹
よã†ã«ã™ã‚‹ã¨ã€ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«å¾Œã®å†ãƒ“ルド,テストç‰ã«å½±éŸ¿ã—ã¾ã™ã‹ï¼Ÿ
調ã¹ãšã«èžã„ã¦ã¾ã™ m(__)m