LINUX.ORG.RU

Установка софтины через ruby gems - проблема с компилером или заголовками

 , ,


0

1

В общем, надо мне поставить через gem софтину. Debian 7.

# gem -v
1.8.23
# gem install xspf2m3u
Building native extensions.  This could take a while...
ERROR:  Error installing xspf2m3u:
        ERROR: Failed to build gem native extension.

        /usr/bin/ruby1.9.1 extconf.rb
checking for xmlParseDoc() in -lxml2... no
checking for xsltParseStylesheetFile() in -lxslt... no
checking for exsltRegisterAll() in -lexslt... no
*** 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.
...
# find / -name mkmf.log
/var/lib/gems/1.9.1/gems/passenger-5.0.26/buildout/ruby/ruby-1.9.3-x86_64-linux/mkmf.log
/var/lib/gems/1.9.1/gems/ruby-xslt-0.9.9/ext/xslt_lib/mkmf.log
/var/lib/gems/1.9.1/gems/passenger-5.0.26/buildout"gcc -o conftest -I/usr/include/ruby-1.9.1/x86_64-linux -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I/var/lib/gems/1.9.1/gems/passenger-5.0.26/src/ruby_native_extension -D_FORTIFY_SOURCE=2  -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -fno-strict-aliasing -fPIC -g conftest.c  -L. -L/usr/lib -L. -Wl,-z,relro -rdynamic -Wl,-export-dynamic     -lruby-1.9.1  -lpthread -lrt -ldl -lcrypt -lm   -lc"
conftest.c:3:25: fatal error: ruby/thread.h: No such file or directory
compilation terminated.

/var/lib/gems/1.9.1/gems/ruby-xslt-0.9.9/ext/xslt_lib/mkmf.log
"gcc -o conftest -I/usr/include/ruby-1.9.1/x86_64-linux -I/usr/include/ruby-1.9.1/ruby/backward -I/usr/include/ruby-1.9.1 -I. -D_FORTIFY_SOURCE=2  -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -fno-strict-aliasing -fPIC -DUSE_ERROR_HANDLER conftest.c  -L. -L/usr/lib -L. -Wl,-z,relro -rdynamic -Wl,-export-dynamic     -lruby-1.9.1 -lexslt  -lpthread -lrt -ldl -lcrypt -lm   -lc"
conftest.c: In function ‘t’:
conftest.c:5:53: error: ‘exsltRegisterAll’ undeclared (first use in this function)
conftest.c:5:53: note: each undeclared identifier is reported only once for each function it appears in
conftest.c:5:28: warning: variable ‘p’ set but not used [-Wunused-but-set-variable]


Ruby 1.9. Ruby версий выше через rvm поставить тоже не могу:

# rvm install 2.1
ruby-2.1.8 - #removing src/ruby-2.1.8..
Searching for binary rubies, this might take some time.
No binary rubies available for: debian/7/x86_64/ruby-2.1.8.
Continuing with compilation. Please read 'rvm help mount' to get more information on binary rubies.
Checking requirements for debian.
Requirements installation successful.
Installing Ruby from source to: /usr/local/rvm/rubies/ruby-2.1.8, this may take a while depending on your cpu(s)...
ruby-2.1.8 - #downloading ruby-2.1.8, this may take a while depending on your connection...
ruby-2.1.8 - #extracting ruby-2.1.8 to /usr/local/rvm/src/ruby-2.1.8....
ruby-2.1.8 - #configuring.....................................................
ruby-2.1.8 - #post-configuration..
ruby-2.1.8 - #compiling....
Error running '__rvm_make -j4',
showing last 15 lines of /usr/local/rvm/log/1460034460_ruby-2.1.8/make.log
Configured with: ../src/configure -v --with-pkgversion='Debian 4.7.2-5' --with-bugurl=file:///usr/share/doc/gcc-4.7/README.Bugs --enable-languages=c,c++,go,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.7 --enable-shared --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.7 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --enable-plugin --enable-objc-gc --with-arch-32=i586 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 4.7.2 (Debian 4.7.2-5) 
compiling miniinit.c
compiling miniprelude.c
translating probes probes.d
compiling bignum.c
compiling class.c
compiling compar.c
compiling complex.c
0: No source file /dev/fd/3
dtrace: failed to compile script probes.d: Preprocessor failed to process input program
make: *** [probes.h] Error 1
make: *** Waiting for unfinished jobs....
++ return 2
There has been an error while running make. Halting the installation.


В общем затык где-то в библиотеках, или компилере, как я понимаю. make стоит, gcc там, чё еще. Все зависимости в норме. Что тут делать дальше?

если занимаешься руби разработкой, зачем тебе этот треш (дебиан)?

kep ()
Ответ на: комментарий от kep

Да я софтину хочу поставить, она через gems распространяется. Компилить ее вручную - грабли.

drunken_train ()
Ответ на: комментарий от Log_in

Ахринеть, заработало! Как нужно было понять, что нужны эти библиотеки? Нигде напрямую не писалось.

drunken_train ()
Ответ на: комментарий от drunken_train

У тебя же в выхлопе было написано:

checking for xmlParseDoc() in -lxml2... no
checking for xsltParseStylesheetFile() in -lxslt... no
checking for exsltRegisterAll() in -lexslt... no
*** extconf.rb failed ***

Log_in ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.