Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Ruby: Общие вопросы > libxml


Автор: _Leshiy_ 25.9.2006, 13:00
всем привет!
У меня проблемы при инсталяции библиотеки libxml-ruby-0.3.8 под Windows.

я пытаюсь инсталировать эту lib'y c помощью следующей команды:

Код
gem install libxml-ruby -y


в результате вылетает ошибка

user posted image

кто-нибудь сталкивался с этим?

http://rubyforge.org/tracker/index.php?func=detail&aid=5022&group_id=494&atid=1971 лежит какой-то патч, там написано как его использовать, но у меня не получается  smile  ("patch" не является внутренней или внешней командой, исполняемой командой или пакетным файлом). 

Автор: skalex 4.10.2006, 14:54
Ну а что скажем пишется в лог? Согласно скриншоту лог-файл - c:/ruby/lib/ruby/gems/1.8/gems/libxml-ruby-0.3.8/ext/xml/gem_make.out.

Автор: _Leshiy_ 25.12.2007, 20:30
В лог файл пишется вот что:

Код

ruby extconf.rb install libxml-ruby -y -v 0.3.8.4
checking for socket() in socket.lib... no
checking for gethostbyname() in nsl.lib... no
checking for atan() in m.lib... yes
checking for inflate() in z.lib... no
checking for inflate() in zlib1.lib... no
 extconf failure: need zlib
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers.  Check the mkmf.log file for more
details.  You may need configuration options.

Provided configuration options:
    --with-opt-dir
    --without-opt-dir
    --with-opt-include
    --without-opt-include=${opt-dir}/include
    --with-opt-lib
    --without-opt-lib=${opt-dir}/lib
    --with-make-prog
    --srcdir=.
    --curdir
    --ruby=c:/ruby/bin/ruby
    --with-iconv-dir
    --without-iconv-dir
    --with-iconv-include
    --without-iconv-include=${iconv-dir}/include
    --with-iconv-lib
    --without-iconv-lib=${iconv-dir}/lib
    --with-xml2-dir
    --without-xml2-dir
    --with-xml2-include
    --without-xml2-include=${xml2-dir}/include
    --with-xml2-lib
    --without-xml2-lib=${xml2-dir}/lib
    --with-zlib-dir
    --without-zlib-dir
    --with-zlib-include
    --without-zlib-include=${zlib-dir}/include
    --with-zlib-lib
    --without-zlib-lib=${zlib-dir}/lib
    --with-socketlib
    --without-socketlib
    --with-nsllib
    --without-nsllib
    --with-mlib
    --without-mlib
    --with-zlib
    --without-zlib
    --with-zlib1lib
    --without-zlib1lib


И мне это ничего не говорит :(

Заодно скину сюда mkmf.log :

Код

have_library: checking for socket() in socket.lib... -------------------- no

"cl -nologo -Feconftest -I. -Ic:/ruby/lib/ruby/1.8/i386-mswin32 -I. -Ic:/ruby/lib/ruby/1.8/i386-mswin32  -MD -Zi -O2b2xg- -G6 conftest.c   msvcrt-ruby18-static.lib socket.lib  oldnames.lib user32.lib advapi32.lib ws2_32.lib   -link    -libpath:"c:/ruby/lib" -libpath:"c:/ruby/lib" -stack:0x2000000"
checked program was:
/* begin */
1: #define WIN32_LEAN_AND_MEAN
2: #include <winsock2.h>
3: #include <windows.h>
4: 
5: /*top*/
6: int main() { return 0; }
7: int t() { void ((*volatile p)()); p = (void ((*)()))socket; return 0; }
/* end */

"cl -nologo -Feconftest -I. -Ic:/ruby/lib/ruby/1.8/i386-mswin32 -I. -Ic:/ruby/lib/ruby/1.8/i386-mswin32  -MD -Zi -O2b2xg- -G6 conftest.c   msvcrt-ruby18-static.lib socket.lib  oldnames.lib user32.lib advapi32.lib ws2_32.lib   -link    -libpath:"c:/ruby/lib" -libpath:"c:/ruby/lib" -stack:0x2000000"
checked program was:
/* begin */
1: /*top*/
2: int main() { return 0; }
3: int t() { socket(); return 0; }
/* end */

--------------------

have_library: checking for gethostbyname() in nsl.lib... -------------------- no

"cl -nologo -Feconftest -I. -Ic:/ruby/lib/ruby/1.8/i386-mswin32 -I. -Ic:/ruby/lib/ruby/1.8/i386-mswin32  -MD -Zi -O2b2xg- -G6 conftest.c   msvcrt-ruby18-static.lib nsl.lib  oldnames.lib user32.lib advapi32.lib ws2_32.lib   -link    -libpath:"c:/ruby/lib" -libpath:"c:/ruby/lib" -stack:0x2000000"
checked program was:
/* begin */
1: #define WIN32_LEAN_AND_MEAN
2: #include <winsock2.h>
3: #include <windows.h>
4: 
5: /*top*/
6: int main() { return 0; }
7: int t() { void ((*volatile p)()); p = (void ((*)()))gethostbyname; return 0; }
/* end */

"cl -nologo -Feconftest -I. -Ic:/ruby/lib/ruby/1.8/i386-mswin32 -I. -Ic:/ruby/lib/ruby/1.8/i386-mswin32  -MD -Zi -O2b2xg- -G6 conftest.c   msvcrt-ruby18-static.lib nsl.lib  oldnames.lib user32.lib advapi32.lib ws2_32.lib   -link    -libpath:"c:/ruby/lib" -libpath:"c:/ruby/lib" -stack:0x2000000"
checked program was:
/* begin */
1: /*top*/
2: int main() { return 0; }
3: int t() { gethostbyname(); return 0; }
/* end */

--------------------

have_library: checking for atan() in m.lib... -------------------- yes

--------------------

have_library: checking for inflate() in z.lib... -------------------- no

"cl -nologo -Feconftest -I. -Ic:/ruby/lib/ruby/1.8/i386-mswin32 -I. -Ic:/ruby/lib/ruby/1.8/i386-mswin32  -MD -Zi -O2b2xg- -G6 conftest.c   msvcrt-ruby18-static.lib z.lib  oldnames.lib user32.lib advapi32.lib ws2_32.lib   -link    -libpath:"c:/ruby/lib" -libpath:"c:/ruby/lib" -stack:0x2000000"
checked program was:
/* begin */
1: #define WIN32_LEAN_AND_MEAN
2: #include <winsock2.h>
3: #include <windows.h>
4: 
5: /*top*/
6: int main() { return 0; }
7: int t() { void ((*volatile p)()); p = (void ((*)()))inflate; return 0; }
/* end */

"cl -nologo -Feconftest -I. -Ic:/ruby/lib/ruby/1.8/i386-mswin32 -I. -Ic:/ruby/lib/ruby/1.8/i386-mswin32  -MD -Zi -O2b2xg- -G6 conftest.c   msvcrt-ruby18-static.lib z.lib  oldnames.lib user32.lib advapi32.lib ws2_32.lib   -link    -libpath:"c:/ruby/lib" -libpath:"c:/ruby/lib" -stack:0x2000000"
checked program was:
/* begin */
1: /*top*/
2: int main() { return 0; }
3: int t() { inflate(); return 0; }
/* end */

--------------------

have_library: checking for inflate() in zlib1.lib... -------------------- no

"cl -nologo -Feconftest -I. -Ic:/ruby/lib/ruby/1.8/i386-mswin32 -I. -Ic:/ruby/lib/ruby/1.8/i386-mswin32  -MD -Zi -O2b2xg- -G6 conftest.c   msvcrt-ruby18-static.lib zlib1.lib  oldnames.lib user32.lib advapi32.lib ws2_32.lib   -link    -libpath:"c:/ruby/lib" -libpath:"c:/ruby/lib" -stack:0x2000000"
checked program was:
/* begin */
1: #define WIN32_LEAN_AND_MEAN
2: #include <winsock2.h>
3: #include <windows.h>
4: 
5: /*top*/
6: int main() { return 0; }
7: int t() { void ((*volatile p)()); p = (void ((*)()))inflate; return 0; }
/* end */

"cl -nologo -Feconftest -I. -Ic:/ruby/lib/ruby/1.8/i386-mswin32 -I. -Ic:/ruby/lib/ruby/1.8/i386-mswin32  -MD -Zi -O2b2xg- -G6 conftest.c   msvcrt-ruby18-static.lib zlib1.lib  oldnames.lib user32.lib advapi32.lib ws2_32.lib   -link    -libpath:"c:/ruby/lib" -libpath:"c:/ruby/lib" -stack:0x2000000"
checked program was:
/* begin */
1: /*top*/
2: int main() { return 0; }
3: int t() { inflate(); return 0; }
/* end */

--------------------



PS
Я не тормоз  smile . Просто я забил инсталировать эту либу под виндами, а сейчас вспомнил про это. Под unix всё нормально поставилось ;)

Автор: v2v 22.4.2008, 09:42
ты решил этот вопрос под виндой?

Автор: _Leshiy_ 7.7.2008, 22:43
Цитата(v2v @ 22.4.2008,  09:42)
ты решил этот вопрос под виндой?

нет  :(

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)