Backport #5042
closedruby-1.9.2-p290 Build Error @Cygwin
Description
最新版 ruby-1.9.2-p290 をビルドしたところ win32ole のところでギブアップ。
以下にmake時の表示を貼り付けます。
compiling win32ole
make[1]: Entering directory /cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole' gcc -shared -s -o ../../.ext/i386-cygwin/win32ole.so win32ole.o -L. -L../.. -L. -Wl,--enable-auto-image-base,--enable-auto-import -lruby191 -ladvapi32 -lkernel32 -luser32 -luuid -loleaut32 -lole32 -lpthread -lrt -ldl -lcrypt win32ole.o: In function
fole_activex_initialize':
/cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:4769: undefined reference to _IID_IPersistMemory' win32ole.o: In function
mf_QueryInterface':
/cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:597: undefined reference to _IID_IUnknown' /cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:598: undefined reference to
_IID_IMessageFilter'
win32ole.o: In function QueryInterface': /cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:699: undefined reference to
_IID_IUnknown'
/cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:700: undefined reference to _IID_IDispatch' win32ole.o: In function
EVENTSINK_QueryInterface@12':
/cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:7578: undefined reference to _IID_IUnknown' /cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:7579: undefined reference to
_IID_IDispatch'
win32ole.o: In function fole_each': /cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:4021: undefined reference to
_GUID_NULL'
/cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:4038: undefined reference to _IID_IEnumVARIANT' win32ole.o: In function
load_conv_function51932':
/cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:934: undefined reference to _CLSID_CMultiLanguage' /cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:934: undefined reference to
_CLSID_CMultiLanguage'
/cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:934: undefined reference to _CLSID_CMultiLanguage' /cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:934: undefined reference to
_CLSID_CMultiLanguage'
win32ole.o: In function ole_create_dcom': /cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:2622: undefined reference to
_IID_IDispatch'
win32ole.o: In function fole_initialize': /cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:3255: undefined reference to
_IID_IDispatch'
win32ole.o: In function load_conv_function51932': /cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:934: undefined reference to
_CLSID_CMultiLanguage'
win32ole.o: In function fole_s_connect': /cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:2725: undefined reference to
_IID_IDispatch'
win32ole.o: In function ole_bind_obj': /cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:2663: undefined reference to
_IID_IDispatch'
win32ole.o: In function fole_respond_to': /cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:4523: undefined reference to
_GUID_NULL'
win32ole.o: In function find_default_source': /cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:8181: undefined reference to
_IID_IProvideClassInfo2'
/cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:8197: undefined reference to _IID_IProvideClassInfo' win32ole.o: In function
ev_advise':
/cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:8315: undefined reference to _IID_IConnectionPointContainer' win32ole.o: In function
ole_variant2val':
/cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:2262: undefined reference to _IID_IDispatch' win32ole.o: In function
ole_invoke2':
/cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:3739: undefined reference to _GUID_NULL' win32ole.o: In function
ole_invoke':
/cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:3399: undefined reference to _GUID_NULL' /cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:3457: undefined reference to
_GUID_NULL'
/cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:3371: undefined reference to _GUID_NULL' /cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:3474: undefined reference to
_GUID_NULL'
win32ole.o:/cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:3488: more undefined references to _GUID_NULL' follow win32ole.o: In function
load_conv_function51932':
/cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole/win32ole.c:934: undefined reference to _CLSID_CMultiLanguage' collect2: ld returned 1 exit status make[1]: *** [../../.ext/i386-cygwin/win32ole.so] Error 1 make[1]: Leaving directory
/cygdrive/c/home/mfurui/tmp/ruby-1.9.2-p290/ext/win32ole'
make: *** [mkmain.sh] Error 1
Updated by tarui (Masaya Tarui) over 13 years ago
- Priority changed from Normal to 3
優先度はLowにさせてもらいますが、Cygwinを見れる人はいませんか?
Updated by basyura (basyura ) over 13 years ago
環境変数の追加で入らないでしょうか?
http://www29.atwiki.jp/akcnv/pages/26.html
export LIBRARY_PATH=/usr/lib/w32api:$LD_LIBRARY_PATH
Updated by iwa (Motonori IWAMURO) over 13 years ago
ruby_1_9_3 枝では、既に以下のようなコードがextconf.rbに追加されているようです。
case RUBY_PLATFORM when /cygwin/ inc = nil lib = '/usr/lib/w32api' end
詳細は
svn diff http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_9_2/ext/win32ole/extconf.rb http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_9_3/ext/win32ole/extconf.rb
で確認できます。
Updated by mfurui (Mitsuru FURUI) over 13 years ago
環境変数で対応できました。
Updated by naruse (Yui NARUSE) over 13 years ago
- Tracker changed from Bug to Backport
- Project changed from Ruby master to Backport192
- Category changed from build to build
- Status changed from Open to Assigned
- Assignee set to yugui (Yuki Sonoda)
- Target version deleted (
1.9.2)
backport r29746
Updated by naruse (Yui NARUSE) over 8 years ago
- Status changed from Assigned to Rejected