Bug #11243
closed
make install failed on Solaris10
Added by ngoto (Naohisa Goto) about 10 years ago.
Updated almost 10 years ago.
Description
Solaris 10 にて make install に失敗します。
r50813 にて症状を確認しています。
preprocessing version.c
generating sparc64-solaris2.10-fake.rb
sparc64-solaris2.10-fake.rb updated
./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext -- --disable-gems -r./sparc64-solaris2.10-fake ./tool/rbinstall.rb --make="make" --dest-dir="" --extout=".ext" --mflags="" --make-flags="" --data-mode=0644 --prog-mode=0755 --installed-list .installed.list --mantype="man" --install=all --rdoc-output=".ext/rdoc"
/XXXXX-50813/tool/fake.rb:2
:in `<class:File>': uninitialized constant File::RUBY_PLATFORM (NameError)
from /XXXXX-50813/tool/fake.rb:1:in `<top (required)>'
from /XXXXX-50813/sparc64-solaris2.10-fake.rb:19:in `eval'
from /XXXXX-50813/sparc64-solaris2.10-fake.rb:19:in `<top (required)>'
from ./tool/rbinstall.rb:1:in `require'
make: *** [do-install-all] Error 1
sparc64-solaris2.10-fake.rb を添付します。
Files
コンパイラは Oracle Solaris Studio 12.3 です。
$ /opt/solarisstudio12.3/bin/cc -V
cc: Sun C 5.12 SunOS_sparc 2011/11/16
version.h と version.i を添付します。
Solaris 10 上の fcc (Fujitsu C Compiler) 5.6 では、以下のエラーになりました。
エラー内容は異なりますが、上記と同様に、バージョン関係のパースが上手く行っていないのが根本的原因と思われます。
preprocessing version.c
generating sparc64-solaris2.10-fake.rb
sparc64-solaris2.10-fake.rb updated
./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext -- --disable-gems -r./sparc64-solaris2.10-fake ./tool/rbinstall.rb --make="make" --dest-dir="" --extout=".ext" --mflags="" --make-flags="" --data-mode=0644 --prog-mode=0755 --installed-list .installed.list --mantype="man" --install=all --rdoc-output=".ext/rdoc"
installing binary commands: /XXXXX/sparc64-fcc-trunk/bin
installing base libraries: /XXXXX/sparc64-fcc-trunk/lib
installing arch files: /XXXXX/sparc64-fcc-trunk/lib/ruby/2.3.0/sparc64-solaris2.10
installing pkgconfig data: /XXXXX/sparc64-fcc-trunk/lib/pkgconfig
installing command scripts: /XXXXX/sparc64-fcc-trunk/bin
installing library scripts: /XXXXX/sparc64-fcc-trunk/lib/ruby/2.3.0
installing common headers: /XXXXX/sparc64-fcc-trunk/include/ruby-2.3.0
installing manpages: /XXXXX/sparc64-fcc-trunk/share/man/man1
installing extension objects: /XXXXX/sparc64-fcc-trunk/lib/ruby/2.3.0/sparc64-solaris2.10
installing extension objects: /XXXXX/sparc64-fcc-trunk/lib/ruby/site_ruby/2.3.0/sparc64-solaris2.10
installing extension objects: /XXXXX/sparc64-fcc-trunk/lib/ruby/vendor_ruby/2.3.0/sparc64-solaris2.10
installing extension headers: /XXXXX/sparc64-fcc-trunk/include/ruby-2.3.0/sparc64-solaris2.10
installing extension scripts: /XXXXX/sparc64-fcc-trunk/lib/ruby/2.3.0
installing extension scripts: /XXXXX/sparc64-fcc-trunk/lib/ruby/site_ruby/2.3.0
installing extension scripts: /XXXXX/sparc64-fcc-trunk/lib/ruby/vendor_ruby/2.3.0
installing extension headers: /XXXXX/sparc64-fcc-trunk/include/ruby-2.3.0/ruby
installing default gems: /XXXXX/sparc64-fcc-trunk/lib/ruby/gems/2.3.0 (build_info, cache, doc, extensions, gems, specifications)
bigdecimal 1.2.7
io-console 0.4.3
json 1.8.2
psych 2.0.13
rdoc 4.2.0
installing bundle gems: /XXXXX/sparc64-fcc-trunk/lib/ruby/gems/2.3.0 (build_info, cache, doc, extensions, gems, specifications)
/XXXXX/sparc64-fcc-trunk-50813/lib/rubygems/version.rb:206:in `initialize': Malformed version number string 2.3.0" .dev.0 (ArgumentError)
from /XXXXX/sparc64-fcc-trunk-50813/lib/rubygems/version.rb:198:in `new'
from /XXXXX/sparc64-fcc-trunk-50813/lib/rubygems/version.rb:198:in `new'
from /XXXXX/sparc64-fcc-trunk-50813/lib/rubygems.rb:845:in `ruby_version'
from /XXXXX/sparc64-fcc-trunk-50813/lib/rubygems/installer.rb:559:in `ensure_required_ruby_version_met'
from /XXXXX/sparc64-fcc-trunk-50813/lib/rubygems/installer.rb:782:in `pre_install_checks'
from /XXXXX/sparc64-fcc-trunk-50813/lib/rubygems/installer.rb:231:in `install'
from ./tool/rbinstall.rb:654:in `call'
from ./tool/rbinstall.rb:654:in `block in <class:Installer>'
from /XXXXX/sparc64-fcc-trunk-50813/lib/rubygems/resolver/specification.rb:96:in `install'
from /XXXXX/sparc64-fcc-trunk-50813/lib/rubygems/request_set.rb:257:in `block in install_into'
from /XXXXX/sparc64-fcc-trunk-50813/lib/rubygems/request_set.rb:249:in `each'
from /XXXXX/sparc64-fcc-trunk-50813/lib/rubygems/request_set.rb:249:in `install_into'
from /XXXXX/sparc64-fcc-trunk-50813/lib/rubygems/request_set.rb:141:in `install'
from /XXXXX/sparc64-fcc-trunk-50813/lib/rubygems/dependency_installer.rb:404:in `install'
from /XXXXX/sparc64-fcc-trunk-50813/lib/rubygems.rb:558:in `install'
from ./tool/rbinstall.rb:733:in `block (2 levels) in <main>'
from ./tool/rbinstall.rb:732:in `each'
from ./tool/rbinstall.rb:732:in `block in <main>'
from ./tool/rbinstall.rb:768:in `call'
from ./tool/rbinstall.rb:768:in `block in <main>'
from ./tool/rbinstall.rb:765:in `each'
from ./tool/rbinstall.rb:765:in `<main>'
make: *** [do-install-all] Error 1
version.h と version.i を添付します。
fccでの sparc64-solaris2.10-fake.rb も添付します。
- Status changed from Open to Closed
Applied in changeset r50816.
fake.rb.in: match spaces
version.c のコメントあたりに、
fake.rb.in 内で version.c のcpp処理結果をパースしているので、
「rb_define_global_const("RUBY_*",」の間には余計なスペースを入れたらダメ、
rb_define_global_const の行は1行で書く必要がある、
と書いておかないと、後で忘れそうな気がします。
- Backport changed from 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: UNKNOWN to 2.0.0: DONTNEED, 2.1: DONTNEED, 2.2: DONTNEED
Also available in: Atom
PDF
Like0
Like0Like0Like0Like0Like0Like0