From: "nagachika (Tomoyuki Chikanaga)" Date: 2013-12-18T16:44:46+09:00 Subject: [ruby-dev:47855] [ruby-trunk - Bug #9256][Assigned] Build failure on Mac OS X after r44257 Issue #9256 has been reported by nagachika (Tomoyuki Chikanaga). ---------------------------------------- Bug #9256: Build failure on Mac OS X after r44257 https://bugs.ruby-lang.org/issues/9256 Author: nagachika (Tomoyuki Chikanaga) Status: Assigned Priority: Normal Assignee: nobu (Nobuyoshi Nakada) Category: build Target version: current: 2.1.0 ruby -v: ruby 2.1.0dev (2013-12-18 trunk 44256) [x86_64-darwin13.0] Backport: 1.9.3: UNKNOWN, 2.0.0: UNKNOWN r44257 の変更以後 Mac OS X で make enc が以下のような失敗をすることがあるようです。 making enc linking encoding encdb.bundle ld: warning: -pie being ignored. It is only used when linking a main executable Undefined symbols for architecture x86_64: "_rb_enc_set_base", referenced from: _Init_encdb in encdb.o "_rb_enc_set_dummy", referenced from: _Init_encdb in encdb.o "_rb_encdb_alias", referenced from: _Init_encdb in encdb.o "_rb_encdb_declare", referenced from: _Init_encdb in encdb.o "_rb_encdb_dummy", referenced from: _Init_encdb in encdb.o "_rb_encdb_replicate", referenced from: _Init_encdb in encdb.o "_rb_encdb_set_unicode", referenced from: _Init_encdb in encdb.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation) make[1]: *** [.ext/x86_64-darwin13.0/enc/encdb.bundle] Error 1 make: *** [enc] Error 2 r44257 では configure の --opt-dir を処理する位置を移動しているのですが、この中に LDFLAGS と DLDFLAGS にフラグを追加する処理があります。 しかしこの結果 $target_os で分岐して darwin の時 DLDFLAGS を設定しているところの前にこの処理がきてしまったため DLDFLAGS に -Wl,-undefined,dynamic_lookup -Wl,-multiply_defined,suppress が追加されなくなったのが直接の原因ではないかと思います。 -- http://bugs.ruby-lang.org/