Closed mbixby17451 closed 7 years ago
Fails with the same symptoms for the newly released 1.7.0 version (builds libraries in lib64, looks for them in lib).
markb@linux:~> gem install nokogiri
Fetching: mini_portile2-2.1.0.gem (100%)
Successfully installed mini_portile2-2.1.0
Fetching: nokogiri-1.7.0.gem (100%)
Building native extensions. This could take a while...
ERROR: Error installing nokogiri:
ERROR: Failed to build gem native extension.
current directory: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ext/nokogiri
/home/markb/stack/bin/ruby -r ./siteconf20170103-3181-n5wxk3.rb extconf.rb
checking if the C compiler accepts ... yes
Building nokogiri using packaged libraries.
Using mini_portile version 2.1.0
checking for gzdopen() in -lz... yes
checking for iconv using --with-opt-* flags... yes
************************************************************************
IMPORTANT NOTICE:
Building Nokogiri with a packaged version of libxml2-2.9.4.
Team Nokogiri will keep on doing their best to provide security
updates in a timely manner, but if this is a concern for you and want
to use the system library instead; abort this installation process and
reinstall nokogiri as follows:
gem install nokogiri -- --use-system-libraries
[--with-xml2-config=/path/to/xml2-config]
[--with-xslt-config=/path/to/xslt-config]
If you are using Bundler, tell it to use the option:
bundle config build.nokogiri --use-system-libraries
bundle install
Note, however, that nokogiri is not fully compatible with arbitrary
versions of libxml2 provided by OS/package vendors.
************************************************************************
Extracting libxml2-2.9.4.tar.gz into tmp/x86_64-pc-linux-gnu/ports/libxml2/2.9.4... OK
Running 'configure' for libxml2 2.9.4... OK
Running 'compile' for libxml2 2.9.4... OK
Running 'install' for libxml2 2.9.4... OK
Activating libxml2 2.9.4 (from /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4)...
************************************************************************
IMPORTANT NOTICE:
Building Nokogiri with a packaged version of libxslt-1.1.29.
Team Nokogiri will keep on doing their best to provide security
updates in a timely manner, but if this is a concern for you and want
to use the system library instead; abort this installation process and
reinstall nokogiri as follows:
gem install nokogiri -- --use-system-libraries
[--with-xml2-config=/path/to/xml2-config]
[--with-xslt-config=/path/to/xslt-config]
If you are using Bundler, tell it to use the option:
bundle config build.nokogiri --use-system-libraries
bundle install
************************************************************************
Extracting libxslt-1.1.29.tar.gz into tmp/x86_64-pc-linux-gnu/ports/libxslt/1.1.29... OK
Running 'configure' for libxslt 1.1.29... OK
Running 'compile' for libxslt 1.1.29... OK
Running 'install' for libxslt 1.1.29... OK
Activating libxslt 1.1.29 (from /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29)...
checking for main() in -llzma... no
checking for xmlParseDoc() in libxml/parser.h... no
checking for xmlParseDoc() in -lxml2... no
checking for xmlParseDoc() in -llibxml2... no
-----
libxml2 is missing. Please locate mkmf.log to investigate how it is failing.
-----
*** 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
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib64
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/home/markb/stack/bin/$(RUBY_BASE_NAME)
--help
--clean
--use-system-libraries
--enable-static
--disable-static
--with-zlib-dir
--without-zlib-dir
--with-zlib-include
--without-zlib-include=${zlib-dir}/include
--with-zlib-lib
--without-zlib-lib=${zlib-dir}/lib64
--enable-cross-build
--disable-cross-build
--with-xml2lib
--without-xml2lib
--with-libxml2lib
--without-libxml2lib
To see why this extension failed to compile, please check the mkmf.log which can be found here:
/home/markb/stack/lib64/ruby/gems/2.3.0/extensions/x86_64-linux/2.3.0-static/nokogiri-1.7.0/mkmf.log
extconf failed, exit code 1
Gem files will remain installed in /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0 for inspection.
Results logged to /home/markb/stack/lib64/ruby/gems/2.3.0/extensions/x86_64-linux/2.3.0-static/nokogiri-1.7.0/gem_make.out
markb@linux:~> cat /home/markb/stack/lib64/ruby/gems/2.3.0/extensions/x86_64-linux/2.3.0-static/nokogiri-1.7.0/mkmf.log
"gcc -o conftest -I/home/markb/stack/include/ruby-2.3.0/x86_64-linux -I/home/markb/stack/include/ruby-2.3.0/ruby/backward -I/home/markb/stack/include/ruby-2.3.0 -I. -I/home/markb/stack/include -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat conftest.c -L. -L/home/markb/stack/lib64 -Wl,-R/home/markb/stack/lib64 -L/home/markb/stack/lib64 -Wl,-R/home/markb/stack/lib64 -L. -fstack-protector -rdynamic -Wl,-export-dynamic -L/home/markb/stack/lib -Wl,-R/home/markb/stack/lib -Wl,-R/home/markb/stack/lib64 -L/home/markb/stack/lib64 -lruby-static -lpthread -lgmp -ldl -lcrypt -lm -lc "
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: int main(int argc, char **argv)
4: {
5: return 0;
6: }
/* end */
"gcc -I/home/markb/stack/include/ruby-2.3.0/x86_64-linux -I/home/markb/stack/include/ruby-2.3.0/ruby/backward -I/home/markb/stack/include/ruby-2.3.0 -I. -I/home/markb/stack/include -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -Werror -c conftest.c"
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: int main() {return 0;}
/* end */
have_library: checking for gzdopen() in -lz... -------------------- yes
"gcc -o conftest -I/home/markb/stack/include/ruby-2.3.0/x86_64-linux -I/home/markb/stack/include/ruby-2.3.0/ruby/backward -I/home/markb/stack/include/ruby-2.3.0 -I. -I/home/markb/stack/include -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline conftest.c -L. -L/home/markb/stack/lib64 -Wl,-R/home/markb/stack/lib64 -L/home/markb/stack/lib64 -Wl,-R/home/markb/stack/lib64 -L. -fstack-protector -rdynamic -Wl,-export-dynamic -L/home/markb/stack/lib -Wl,-R/home/markb/stack/lib -Wl,-R/home/markb/stack/lib64 -L/home/markb/stack/lib64 -lruby-static -lz -lpthread -lgmp -ldl -lcrypt -lm -lc "
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <zlib.h>
4:
5: /*top*/
6: extern int t(void);
7: int main(int argc, char **argv)
8: {
9: if (argc > 1000000) {
10: printf("%p", &t);
11: }
12:
13: return 0;
14: }
15: int t(void) { void ((*volatile p)()); p = (void ((*)()))gzdopen; return !p; }
/* end */
--------------------
have_iconv?: checking for iconv using --with-opt-* flags... -------------------- yes
"gcc -o conftest -I/home/markb/stack/include/ruby-2.3.0/x86_64-linux -I/home/markb/stack/include/ruby-2.3.0/ruby/backward -I/home/markb/stack/include/ruby-2.3.0 -I. -I/home/markb/stack/include -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline conftest.c -L. -L/home/markb/stack/lib64 -Wl,-R/home/markb/stack/lib64 -L/home/markb/stack/lib64 -Wl,-R/home/markb/stack/lib64 -L. -fstack-protector -rdynamic -Wl,-export-dynamic -L/home/markb/stack/lib -Wl,-R/home/markb/stack/lib -Wl,-R/home/markb/stack/lib64 -L/home/markb/stack/lib64 -lruby-static -lpthread -lgmp -ldl -lcrypt -lm -lc "
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <stdlib.h>
4: #include <iconv.h>
5:
6: int main(void)
7: {
8: iconv_t cd = iconv_open("", "");
9: iconv(cd, NULL, NULL, NULL, NULL);
10: return EXIT_SUCCESS;
11: }
/* end */
--------------------
have_library: checking for main() in -llzma... -------------------- no
"gcc -o conftest -I/home/markb/stack/include/ruby-2.3.0/x86_64-linux -I/home/markb/stack/include/ruby-2.3.0/ruby/backward -I/home/markb/stack/include/ruby-2.3.0 -I. -I/home/markb/stack/include -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline -DNOKOGIRI_USE_PACKAGED_LIBRARIES conftest.c -L. -L/home/markb/stack/lib64 -Wl,-R/home/markb/stack/lib64 -L/home/markb/stack/lib64 -Wl,-R/home/markb/stack/lib64 -L. -fstack-protector -rdynamic -Wl,-export-dynamic -L/home/markb/stack/lib -Wl,-R/home/markb/stack/lib -Wl,-R/home/markb/stack/lib64 -L/home/markb/stack/lib64 -lruby-static -llzma -lpthread -lgmp -ldl -lcrypt -lm -lc "
/usr/lib64/gcc/x86_64-suse-linux/4.8/../../../../x86_64-suse-linux/bin/ld: cannot find -llzma
collect2: error: ld returned 1 exit status
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: /*top*/
4: extern int t(void);
5: int main(int argc, char **argv)
6: {
7: if (argc > 1000000) {
8: printf("%p", &t);
9: }
10:
11: return 0;
12: }
13: int t(void) { void ((*volatile p)()); p = (void ((*)()))main; return !p; }
/* end */
"gcc -o conftest -I/home/markb/stack/include/ruby-2.3.0/x86_64-linux -I/home/markb/stack/include/ruby-2.3.0/ruby/backward -I/home/markb/stack/include/ruby-2.3.0 -I. -I/home/markb/stack/include -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline -DNOKOGIRI_USE_PACKAGED_LIBRARIES conftest.c -L. -L/home/markb/stack/lib64 -Wl,-R/home/markb/stack/lib64 -L/home/markb/stack/lib64 -Wl,-R/home/markb/stack/lib64 -L. -fstack-protector -rdynamic -Wl,-export-dynamic -L/home/markb/stack/lib -Wl,-R/home/markb/stack/lib -Wl,-R/home/markb/stack/lib64 -L/home/markb/stack/lib64 -lruby-static -llzma -lpthread -lgmp -ldl -lcrypt -lm -lc "
conftest.c:13:13: error: conflicting types for ‘main’
extern void main();
^
conftest.c:5:5: note: previous definition of ‘main’ was here
int main(int argc, char **argv)
^
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: /*top*/
4: extern int t(void);
5: int main(int argc, char **argv)
6: {
7: if (argc > 1000000) {
8: printf("%p", &t);
9: }
10:
11: return 0;
12: }
13: extern void main();
14: int t(void) { main(); return 0; }
/* end */
--------------------
have_func: checking for xmlParseDoc() in libxml/parser.h... -------------------- no
"gcc -o conftest -I/home/markb/stack/include/ruby-2.3.0/x86_64-linux -I/home/markb/stack/include/ruby-2.3.0/ruby/backward -I/home/markb/stack/include/ruby-2.3.0 -I. -I/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/include -I/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/include/libxml2 -I/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/include/libxml2 -I/home/markb/stack/include "-DNOKOGIRI_LIBXML2_PATH=\"/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4\"" "-DNOKOGIRI_LIBXML2_PATCHES=\"\"" "-DNOKOGIRI_LIBXSLT_PATH=\"/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29\"" "-DNOKOGIRI_LIBXSLT_PATCHES=\"\"" -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline -DNOKOGIRI_USE_PACKAGED_LIBRARIES conftest.c -L. -L/home/markb/stack/lib64 -Wl,-R/home/markb/stack/lib64 -L/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64 -Wl,-R/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64 -L/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib64 -Wl,-R/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib64 -L/home/markb/stack/lib64 -Wl,-R/home/markb/stack/lib64 -L/lib64 -Wl,-R/lib64 -L. -fstack-protector -rdynamic -Wl,-export-dynamic -L/home/markb/stack/lib -Wl,-R/home/markb/stack/lib /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a -lm -ldl -lz /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a -ldl -lm -lz /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a -Wl,-R/home/markb/stack/lib64 -L/home/markb/stack/lib64 -lruby-static /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a -lm -ldl -lz /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a -ldl -lm -lz /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a -lpthread -lgmp -ldl -lcrypt -lm -lc "
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <libxml/parser.h>
4:
5: /*top*/
6: extern int t(void);
7: int main(int argc, char **argv)
8: {
9: if (argc > 1000000) {
10: printf("%p", &t);
11: }
12:
13: return 0;
14: }
15: int t(void) { void ((*volatile p)()); p = (void ((*)()))xmlParseDoc; return !p; }
/* end */
"gcc -o conftest -I/home/markb/stack/include/ruby-2.3.0/x86_64-linux -I/home/markb/stack/include/ruby-2.3.0/ruby/backward -I/home/markb/stack/include/ruby-2.3.0 -I. -I/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/include -I/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/include/libxml2 -I/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/include/libxml2 -I/home/markb/stack/include "-DNOKOGIRI_LIBXML2_PATH=\"/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4\"" "-DNOKOGIRI_LIBXML2_PATCHES=\"\"" "-DNOKOGIRI_LIBXSLT_PATH=\"/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29\"" "-DNOKOGIRI_LIBXSLT_PATCHES=\"\"" -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline -DNOKOGIRI_USE_PACKAGED_LIBRARIES conftest.c -L. -L/home/markb/stack/lib64 -Wl,-R/home/markb/stack/lib64 -L/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64 -Wl,-R/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64 -L/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib64 -Wl,-R/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib64 -L/home/markb/stack/lib64 -Wl,-R/home/markb/stack/lib64 -L/lib64 -Wl,-R/lib64 -L. -fstack-protector -rdynamic -Wl,-export-dynamic -L/home/markb/stack/lib -Wl,-R/home/markb/stack/lib /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a -lm -ldl -lz /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a -ldl -lm -lz /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a -Wl,-R/home/markb/stack/lib64 -L/home/markb/stack/lib64 -lruby-static /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a -lm -ldl -lz /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a -ldl -lm -lz /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a -lpthread -lgmp -ldl -lcrypt -lm -lc "
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <libxml/parser.h>
4:
5: /*top*/
6: extern int t(void);
7: int main(int argc, char **argv)
8: {
9: if (argc > 1000000) {
10: printf("%p", &t);
11: }
12:
13: return 0;
14: }
15: extern void xmlParseDoc();
16: int t(void) { xmlParseDoc(); return 0; }
/* end */
--------------------
have_library: checking for xmlParseDoc() in -lxml2... -------------------- no
"gcc -o conftest -I/home/markb/stack/include/ruby-2.3.0/x86_64-linux -I/home/markb/stack/include/ruby-2.3.0/ruby/backward -I/home/markb/stack/include/ruby-2.3.0 -I. -I/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/include -I/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/include/libxml2 -I/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/include/libxml2 -I/home/markb/stack/include "-DNOKOGIRI_LIBXML2_PATH=\"/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4\"" "-DNOKOGIRI_LIBXML2_PATCHES=\"\"" "-DNOKOGIRI_LIBXSLT_PATH=\"/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29\"" "-DNOKOGIRI_LIBXSLT_PATCHES=\"\"" -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline -DNOKOGIRI_USE_PACKAGED_LIBRARIES conftest.c -L. -L/home/markb/stack/lib64 -Wl,-R/home/markb/stack/lib64 -L/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64 -Wl,-R/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64 -L/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib64 -Wl,-R/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib64 -L/home/markb/stack/lib64 -Wl,-R/home/markb/stack/lib64 -L/lib64 -Wl,-R/lib64 -L. -fstack-protector -rdynamic -Wl,-export-dynamic -L/home/markb/stack/lib -Wl,-R/home/markb/stack/lib /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a -lm -ldl -lz /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a -ldl -lm -lz /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a -Wl,-R/home/markb/stack/lib64 -L/home/markb/stack/lib64 -lruby-static -lxml2 /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a -lm -ldl -lz /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a -ldl -lm -lz /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a -lpthread -lgmp -ldl -lcrypt -lm -lc "
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <libxml/parser.h>
4:
5: /*top*/
6: extern int t(void);
7: int main(int argc, char **argv)
8: {
9: if (argc > 1000000) {
10: printf("%p", &t);
11: }
12:
13: return 0;
14: }
15: int t(void) { void ((*volatile p)()); p = (void ((*)()))xmlParseDoc; return !p; }
/* end */
"gcc -o conftest -I/home/markb/stack/include/ruby-2.3.0/x86_64-linux -I/home/markb/stack/include/ruby-2.3.0/ruby/backward -I/home/markb/stack/include/ruby-2.3.0 -I. -I/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/include -I/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/include/libxml2 -I/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/include/libxml2 -I/home/markb/stack/include "-DNOKOGIRI_LIBXML2_PATH=\"/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4\"" "-DNOKOGIRI_LIBXML2_PATCHES=\"\"" "-DNOKOGIRI_LIBXSLT_PATH=\"/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29\"" "-DNOKOGIRI_LIBXSLT_PATCHES=\"\"" -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline -DNOKOGIRI_USE_PACKAGED_LIBRARIES conftest.c -L. -L/home/markb/stack/lib64 -Wl,-R/home/markb/stack/lib64 -L/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64 -Wl,-R/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64 -L/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib64 -Wl,-R/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib64 -L/home/markb/stack/lib64 -Wl,-R/home/markb/stack/lib64 -L/lib64 -Wl,-R/lib64 -L. -fstack-protector -rdynamic -Wl,-export-dynamic -L/home/markb/stack/lib -Wl,-R/home/markb/stack/lib /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a -lm -ldl -lz /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a -ldl -lm -lz /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a -Wl,-R/home/markb/stack/lib64 -L/home/markb/stack/lib64 -lruby-static -lxml2 /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a -lm -ldl -lz /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a -ldl -lm -lz /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a -lpthread -lgmp -ldl -lcrypt -lm -lc "
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <libxml/parser.h>
4:
5: /*top*/
6: extern int t(void);
7: int main(int argc, char **argv)
8: {
9: if (argc > 1000000) {
10: printf("%p", &t);
11: }
12:
13: return 0;
14: }
15: extern void xmlParseDoc();
16: int t(void) { xmlParseDoc(); return 0; }
/* end */
--------------------
have_library: checking for xmlParseDoc() in -llibxml2... -------------------- no
"gcc -o conftest -I/home/markb/stack/include/ruby-2.3.0/x86_64-linux -I/home/markb/stack/include/ruby-2.3.0/ruby/backward -I/home/markb/stack/include/ruby-2.3.0 -I. -I/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/include -I/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/include/libxml2 -I/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/include/libxml2 -I/home/markb/stack/include "-DNOKOGIRI_LIBXML2_PATH=\"/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4\"" "-DNOKOGIRI_LIBXML2_PATCHES=\"\"" "-DNOKOGIRI_LIBXSLT_PATH=\"/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29\"" "-DNOKOGIRI_LIBXSLT_PATCHES=\"\"" -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline -DNOKOGIRI_USE_PACKAGED_LIBRARIES conftest.c -L. -L/home/markb/stack/lib64 -Wl,-R/home/markb/stack/lib64 -L/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64 -Wl,-R/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64 -L/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib64 -Wl,-R/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib64 -L/home/markb/stack/lib64 -Wl,-R/home/markb/stack/lib64 -L/lib64 -Wl,-R/lib64 -L. -fstack-protector -rdynamic -Wl,-export-dynamic -L/home/markb/stack/lib -Wl,-R/home/markb/stack/lib /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a -lm -ldl -lz /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a -ldl -lm -lz /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a -Wl,-R/home/markb/stack/lib64 -L/home/markb/stack/lib64 -lruby-static -llibxml2 /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a -lm -ldl -lz /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a -ldl -lm -lz /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a -lpthread -lgmp -ldl -lcrypt -lm -lc "
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <libxml/parser.h>
4:
5: /*top*/
6: extern int t(void);
7: int main(int argc, char **argv)
8: {
9: if (argc > 1000000) {
10: printf("%p", &t);
11: }
12:
13: return 0;
14: }
15: int t(void) { void ((*volatile p)()); p = (void ((*)()))xmlParseDoc; return !p; }
/* end */
"gcc -o conftest -I/home/markb/stack/include/ruby-2.3.0/x86_64-linux -I/home/markb/stack/include/ruby-2.3.0/ruby/backward -I/home/markb/stack/include/ruby-2.3.0 -I. -I/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/include -I/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/include/libxml2 -I/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/include/libxml2 -I/home/markb/stack/include "-DNOKOGIRI_LIBXML2_PATH=\"/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4\"" "-DNOKOGIRI_LIBXML2_PATCHES=\"\"" "-DNOKOGIRI_LIBXSLT_PATH=\"/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29\"" "-DNOKOGIRI_LIBXSLT_PATCHES=\"\"" -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline -DNOKOGIRI_USE_PACKAGED_LIBRARIES conftest.c -L. -L/home/markb/stack/lib64 -Wl,-R/home/markb/stack/lib64 -L/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64 -Wl,-R/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64 -L/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib64 -Wl,-R/home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib64 -L/home/markb/stack/lib64 -Wl,-R/home/markb/stack/lib64 -L/lib64 -Wl,-R/lib64 -L. -fstack-protector -rdynamic -Wl,-export-dynamic -L/home/markb/stack/lib -Wl,-R/home/markb/stack/lib /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a -lm -ldl -lz /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a -ldl -lm -lz /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a -Wl,-R/home/markb/stack/lib64 -L/home/markb/stack/lib64 -lruby-static -llibxml2 /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a -lm -ldl -lz /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a -ldl -lm -lz /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a -lpthread -lgmp -ldl -lcrypt -lm -lc "
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a: No such file or directory
gcc: error: /home/markb/stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <libxml/parser.h>
4:
5: /*top*/
6: extern int t(void);
7: int main(int argc, char **argv)
8: {
9: if (argc > 1000000) {
10: printf("%p", &t);
11: }
12:
13: return 0;
14: }
15: extern void xmlParseDoc();
16: int t(void) { xmlParseDoc(); return 0; }
/* end */
--------------------
markb@linux:~> find stack -name libxml2.a
stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ext/nokogiri/tmp/x86_64-pc-linux-gnu/ports/libxml2/2.9.4/libxml2-2.9.4/.libs/libxml2.a
stack/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64/libxml2.a
markb@linux:~>
HUGE +1 ON THIS
Have been working through this for days trying to figure out the problem with building nokogiri 1.7.0 on OpenSUSE Leap 42.1. This issue has existed for more than a year and is noted in #1334 by @abbjohn; @cabo helped but ultimately didn't reach any conclusion other than "It built a lib64 dir and nokogiri wants a lib dir."
William Pursell provided a StackOverflow answer that helps: http://stackoverflow.com/questions/9247769/lib-directory-on-64-bit-opensuse-distribution may have some clues. It leads me to /usr/share/site/x86_64-unknown-linux-gnu, which is what sets libdir if it's not already set, and seems to be guessing lib64 vs. lib. As I'm building via bundle install, and doing that via a cap deploy with an rbenv installation, there's a fair number of layers to get through to influence Nokogiri's build.
Adding my info for good Google Fu as it took me a while to get here.
gem_make.out:
current directory: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ext/nokogiri
/usr/local/bin/ruby -r ./siteconf20170104-27932-69pl9d.rb extconf.rb
checking if the C compiler accepts ... yes
Building nokogiri using packaged libraries.
Using mini_portile version 2.1.0
checking for gzdopen() in -lz... yes
checking for iconv... yes
************************************************************************
IMPORTANT NOTICE:
Building Nokogiri with a packaged version of libxml2-2.9.4.
Team Nokogiri will keep on doing their best to provide security
updates in a timely manner, but if this is a concern for you and want
to use the system library instead; abort this installation process and
reinstall nokogiri as follows:
gem install nokogiri -- --use-system-libraries
[--with-xml2-config=/path/to/xml2-config]
[--with-xslt-config=/path/to/xslt-config]
If you are using Bundler, tell it to use the option:
bundle config build.nokogiri --use-system-libraries
bundle install
Note, however, that nokogiri is not fully compatible with arbitrary
versions of libxml2 provided by OS/package vendors.
************************************************************************
Extracting libxml2-2.9.4.tar.gz into tmp/x86_64-pc-linux-gnu/ports/libxml2/2.9.4... OK
Running 'configure' for libxml2 2.9.4... OK
Running 'compile' for libxml2 2.9.4... OK
Running 'install' for libxml2 2.9.4... OK
Activating libxml2 2.9.4 (from /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4)...
************************************************************************
IMPORTANT NOTICE:
Building Nokogiri with a packaged version of libxslt-1.1.29.
Team Nokogiri will keep on doing their best to provide security
updates in a timely manner, but if this is a concern for you and want
to use the system library instead; abort this installation process and
reinstall nokogiri as follows:
gem install nokogiri -- --use-system-libraries
[--with-xml2-config=/path/to/xml2-config]
[--with-xslt-config=/path/to/xslt-config]
If you are using Bundler, tell it to use the option:
bundle config build.nokogiri --use-system-libraries
bundle install
************************************************************************
Extracting libxslt-1.1.29.tar.gz into tmp/x86_64-pc-linux-gnu/ports/libxslt/1.1.29... OK
Running 'configure' for libxslt 1.1.29... OK
Running 'compile' for libxslt 1.1.29... OK
Running 'install' for libxslt 1.1.29... OK
Activating libxslt 1.1.29 (from /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29)...
checking for main() in -llzma... yes
checking for xmlParseDoc() in libxml/parser.h... no
checking for xmlParseDoc() in -lxml2... no
checking for xmlParseDoc() in -llibxml2... no
-----
libxml2 is missing. Please locate mkmf.log to investigate how it is failing.
-----
*** 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}/lib64
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/usr/local/bin/$(RUBY_BASE_NAME)
--help
--clean
--use-system-libraries
--enable-static
--disable-static
--with-zlib-dir
--without-zlib-dir
--with-zlib-include
--without-zlib-include=${zlib-dir}/include
--with-zlib-lib
--without-zlib-lib=${zlib-dir}/lib64
--enable-cross-build
--disable-cross-build
--with-xml2lib
--without-xml2lib
--with-libxml2lib
--without-libxml2lib
To see why this extension failed to compile, please check the mkmf.log which can be found here:
/usr/local/lib64/ruby/gems/2.3.0/extensions/x86_64-linux/2.3.0-static/nokogiri-1.7.0/mkmf.log
extconf failed, exit code 1
mkmf.log:
"gcc -o conftest -I/usr/local/include/ruby-2.3.0/x86_64-linux -I/usr/local/include/ruby-2.3.0/ruby/backward -I/usr/local/include/ruby-2.3.0 -I. -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat conftest.c -L. -L/usr/local/lib64 -Wl,-R/usr/local/lib64 -L. -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-R/usr/local/lib64 -L/usr/local/lib64 -lruby-static -lpthread -ldl -lcrypt -lm -lc "
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: int main(int argc, char **argv)
4: {
5: return 0;
6: }
/* end */
"gcc -I/usr/local/include/ruby-2.3.0/x86_64-linux -I/usr/local/include/ruby-2.3.0/ruby/backward -I/usr/local/include/ruby-2.3.0 -I. -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -Werror -c conftest.c"
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: int main() {return 0;}
/* end */
have_library: checking for gzdopen() in -lz... -------------------- yes
"gcc -o conftest -I/usr/local/include/ruby-2.3.0/x86_64-linux -I/usr/local/include/ruby-2.3.0/ruby/backward -I/usr/local/include/ruby-2.3.0 -I. -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline conftest.c -L. -L/usr/local/lib64 -Wl,-R/usr/local/lib64 -L. -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-R/usr/local/lib64 -L/usr/local/lib64 -lruby-static -lz -lpthread -ldl -lcrypt -lm -lc "
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <zlib.h>
4:
5: /*top*/
6: extern int t(void);
7: int main(int argc, char **argv)
8: {
9: if (argc > 1000000) {
10: printf("%p", &t);
11: }
12:
13: return 0;
14: }
15: int t(void) { void ((*volatile p)()); p = (void ((*)()))gzdopen; return !p; }
/* end */
--------------------
have_iconv?: checking for iconv... -------------------- yes
"gcc -o conftest -I/usr/local/include/ruby-2.3.0/x86_64-linux -I/usr/local/include/ruby-2.3.0/ruby/backward -I/usr/local/include/ruby-2.3.0 -I. -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline conftest.c -L. -L/usr/local/lib64 -Wl,-R/usr/local/lib64 -L. -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-R/usr/local/lib64 -L/usr/local/lib64 -lruby-static -lpthread -ldl -lcrypt -lm -lc "
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <stdlib.h>
4: #include <iconv.h>
5:
6: int main(void)
7: {
8: iconv_t cd = iconv_open("", "");
9: iconv(cd, NULL, NULL, NULL, NULL);
10: return EXIT_SUCCESS;
11: }
/* end */
--------------------
have_library: checking for main() in -llzma... -------------------- yes
"gcc -o conftest -I/usr/local/include/ruby-2.3.0/x86_64-linux -I/usr/local/include/ruby-2.3.0/ruby/backward -I/usr/local/include/ruby-2.3.0 -I. -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline -DNOKOGIRI_USE_PACKAGED_LIBRARIES conftest.c -L. -L/usr/local/lib64 -Wl,-R/usr/local/lib64 -L. -fstack-protector -rdynamic -Wl,-export-dynamic -Wl,-R/usr/local/lib64 -L/usr/local/lib64 -lruby-static -llzma -lpthread -ldl -lcrypt -lm -lc "
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: /*top*/
4: extern int t(void);
5: int main(int argc, char **argv)
6: {
7: if (argc > 1000000) {
8: printf("%p", &t);
9: }
10:
11: return 0;
12: }
13: int t(void) { void ((*volatile p)()); p = (void ((*)()))main; return !p; }
/* end */
--------------------
have_func: checking for xmlParseDoc() in libxml/parser.h... -------------------- no
"gcc -o conftest -I/usr/local/include/ruby-2.3.0/x86_64-linux -I/usr/local/include/ruby-2.3.0/ruby/backward -I/usr/local/include/ruby-2.3.0 -I. -I/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/include -I/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/include/libxml2 -I/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/include/libxml2 "-DNOKOGIRI_LIBXML2_PATH=\"/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4\"" "-DNOKOGIRI_LIBXML2_PATCHES=\"\"" "-DNOKOGIRI_LIBXSLT_PATH=\"/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29\"" "-DNOKOGIRI_LIBXSLT_PATCHES=\"\"" -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline -DNOKOGIRI_USE_PACKAGED_LIBRARIES conftest.c -L. -L/usr/local/lib64 -Wl,-R/usr/local/lib64 -L/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64 -Wl,-R/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64 -L/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib64 -Wl,-R/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib64 -L/lib64 -Wl,-R/lib64 -L. -fstack-protector -rdynamic -Wl,-export-dynamic /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a -lm -ldl -llzma -lz /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a -ldl -lm -llzma -lz /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a -llzma -Wl,-R/usr/local/lib64 -L/usr/local/lib64 -lruby-static /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a -lm -ldl -llzma -lz /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a -ldl -lm -llzma -lz /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a -llzma -lpthread -ldl -lcrypt -lm -lc "
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <libxml/parser.h>
4:
5: /*top*/
6: extern int t(void);
7: int main(int argc, char **argv)
8: {
9: if (argc > 1000000) {
10: printf("%p", &t);
11: }
12:
13: return 0;
14: }
15: int t(void) { void ((*volatile p)()); p = (void ((*)()))xmlParseDoc; return !p; }
/* end */
"gcc -o conftest -I/usr/local/include/ruby-2.3.0/x86_64-linux -I/usr/local/include/ruby-2.3.0/ruby/backward -I/usr/local/include/ruby-2.3.0 -I. -I/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/include -I/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/include/libxml2 -I/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/include/libxml2 "-DNOKOGIRI_LIBXML2_PATH=\"/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4\"" "-DNOKOGIRI_LIBXML2_PATCHES=\"\"" "-DNOKOGIRI_LIBXSLT_PATH=\"/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29\"" "-DNOKOGIRI_LIBXSLT_PATCHES=\"\"" -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline -DNOKOGIRI_USE_PACKAGED_LIBRARIES conftest.c -L. -L/usr/local/lib64 -Wl,-R/usr/local/lib64 -L/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64 -Wl,-R/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64 -L/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib64 -Wl,-R/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib64 -L/lib64 -Wl,-R/lib64 -L. -fstack-protector -rdynamic -Wl,-export-dynamic /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a -lm -ldl -llzma -lz /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a -ldl -lm -llzma -lz /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a -llzma -Wl,-R/usr/local/lib64 -L/usr/local/lib64 -lruby-static /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a -lm -ldl -llzma -lz /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a -ldl -lm -llzma -lz /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a -llzma -lpthread -ldl -lcrypt -lm -lc "
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <libxml/parser.h>
4:
5: /*top*/
6: extern int t(void);
7: int main(int argc, char **argv)
8: {
9: if (argc > 1000000) {
10: printf("%p", &t);
11: }
12:
13: return 0;
14: }
15: extern void xmlParseDoc();
16: int t(void) { xmlParseDoc(); return 0; }
/* end */
--------------------
have_library: checking for xmlParseDoc() in -lxml2... -------------------- no
"gcc -o conftest -I/usr/local/include/ruby-2.3.0/x86_64-linux -I/usr/local/include/ruby-2.3.0/ruby/backward -I/usr/local/include/ruby-2.3.0 -I. -I/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/include -I/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/include/libxml2 -I/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/include/libxml2 "-DNOKOGIRI_LIBXML2_PATH=\"/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4\"" "-DNOKOGIRI_LIBXML2_PATCHES=\"\"" "-DNOKOGIRI_LIBXSLT_PATH=\"/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29\"" "-DNOKOGIRI_LIBXSLT_PATCHES=\"\"" -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline -DNOKOGIRI_USE_PACKAGED_LIBRARIES conftest.c -L. -L/usr/local/lib64 -Wl,-R/usr/local/lib64 -L/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64 -Wl,-R/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64 -L/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib64 -Wl,-R/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib64 -L/lib64 -Wl,-R/lib64 -L. -fstack-protector -rdynamic -Wl,-export-dynamic /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a -lm -ldl -llzma -lz /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a -ldl -lm -llzma -lz /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a -llzma -Wl,-R/usr/local/lib64 -L/usr/local/lib64 -lruby-static -lxml2 /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a -lm -ldl -llzma -lz /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a -ldl -lm -llzma -lz /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a -llzma -lpthread -ldl -lcrypt -lm -lc "
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <libxml/parser.h>
4:
5: /*top*/
6: extern int t(void);
7: int main(int argc, char **argv)
8: {
9: if (argc > 1000000) {
10: printf("%p", &t);
11: }
12:
13: return 0;
14: }
15: int t(void) { void ((*volatile p)()); p = (void ((*)()))xmlParseDoc; return !p; }
/* end */
"gcc -o conftest -I/usr/local/include/ruby-2.3.0/x86_64-linux -I/usr/local/include/ruby-2.3.0/ruby/backward -I/usr/local/include/ruby-2.3.0 -I. -I/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/include -I/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/include/libxml2 -I/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/include/libxml2 "-DNOKOGIRI_LIBXML2_PATH=\"/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4\"" "-DNOKOGIRI_LIBXML2_PATCHES=\"\"" "-DNOKOGIRI_LIBXSLT_PATH=\"/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29\"" "-DNOKOGIRI_LIBXSLT_PATCHES=\"\"" -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline -DNOKOGIRI_USE_PACKAGED_LIBRARIES conftest.c -L. -L/usr/local/lib64 -Wl,-R/usr/local/lib64 -L/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64 -Wl,-R/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64 -L/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib64 -Wl,-R/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib64 -L/lib64 -Wl,-R/lib64 -L. -fstack-protector -rdynamic -Wl,-export-dynamic /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a -lm -ldl -llzma -lz /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a -ldl -lm -llzma -lz /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a -llzma -Wl,-R/usr/local/lib64 -L/usr/local/lib64 -lruby-static -lxml2 /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a -lm -ldl -llzma -lz /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a -ldl -lm -llzma -lz /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a -llzma -lpthread -ldl -lcrypt -lm -lc "
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <libxml/parser.h>
4:
5: /*top*/
6: extern int t(void);
7: int main(int argc, char **argv)
8: {
9: if (argc > 1000000) {
10: printf("%p", &t);
11: }
12:
13: return 0;
14: }
15: extern void xmlParseDoc();
16: int t(void) { xmlParseDoc(); return 0; }
/* end */
--------------------
have_library: checking for xmlParseDoc() in -llibxml2... -------------------- no
"gcc -o conftest -I/usr/local/include/ruby-2.3.0/x86_64-linux -I/usr/local/include/ruby-2.3.0/ruby/backward -I/usr/local/include/ruby-2.3.0 -I. -I/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/include -I/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/include/libxml2 -I/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/include/libxml2 "-DNOKOGIRI_LIBXML2_PATH=\"/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4\"" "-DNOKOGIRI_LIBXML2_PATCHES=\"\"" "-DNOKOGIRI_LIBXSLT_PATH=\"/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29\"" "-DNOKOGIRI_LIBXSLT_PATCHES=\"\"" -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline -DNOKOGIRI_USE_PACKAGED_LIBRARIES conftest.c -L. -L/usr/local/lib64 -Wl,-R/usr/local/lib64 -L/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64 -Wl,-R/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64 -L/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib64 -Wl,-R/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib64 -L/lib64 -Wl,-R/lib64 -L. -fstack-protector -rdynamic -Wl,-export-dynamic /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a -lm -ldl -llzma -lz /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a -ldl -lm -llzma -lz /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a -llzma -Wl,-R/usr/local/lib64 -L/usr/local/lib64 -lruby-static -llibxml2 /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a -lm -ldl -llzma -lz /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a -ldl -lm -llzma -lz /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a -llzma -lpthread -ldl -lcrypt -lm -lc "
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <libxml/parser.h>
4:
5: /*top*/
6: extern int t(void);
7: int main(int argc, char **argv)
8: {
9: if (argc > 1000000) {
10: printf("%p", &t);
11: }
12:
13: return 0;
14: }
15: int t(void) { void ((*volatile p)()); p = (void ((*)()))xmlParseDoc; return !p; }
/* end */
"gcc -o conftest -I/usr/local/include/ruby-2.3.0/x86_64-linux -I/usr/local/include/ruby-2.3.0/ruby/backward -I/usr/local/include/ruby-2.3.0 -I. -I/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/include -I/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/include/libxml2 -I/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/include/libxml2 "-DNOKOGIRI_LIBXML2_PATH=\"/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4\"" "-DNOKOGIRI_LIBXML2_PATCHES=\"\"" "-DNOKOGIRI_LIBXSLT_PATH=\"/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29\"" "-DNOKOGIRI_LIBXSLT_PATCHES=\"\"" -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wimplicit-function-declaration -Wdeprecated-declarations -Wno-packed-bitfield-compat -g -DXP_UNIX -O3 -Wall -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Winline -DNOKOGIRI_USE_PACKAGED_LIBRARIES conftest.c -L. -L/usr/local/lib64 -Wl,-R/usr/local/lib64 -L/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64 -Wl,-R/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib64 -L/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib64 -Wl,-R/usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib64 -L/lib64 -Wl,-R/lib64 -L. -fstack-protector -rdynamic -Wl,-export-dynamic /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a -lm -ldl -llzma -lz /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a -ldl -lm -llzma -lz /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a -llzma -Wl,-R/usr/local/lib64 -L/usr/local/lib64 -lruby-static -llibxml2 /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a -lm -ldl -llzma -lz /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a -ldl -lm -llzma -lz /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a -llzma -lpthread -ldl -lcrypt -lm -lc "
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libexslt.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib/libxslt.a: No such file or directory
gcc: error: /usr/local/lib64/ruby/gems/2.3.0/gems/nokogiri-1.7.0/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib/libxml2.a: No such file or directory
checked program was:
/* begin */
1: #include "ruby.h"
2:
3: #include <libxml/parser.h>
4:
5: /*top*/
6: extern int t(void);
7: int main(int argc, char **argv)
8: {
9: if (argc > 1000000) {
10: printf("%p", &t);
11: }
12:
13: return 0;
14: }
15: extern void xmlParseDoc();
16: int t(void) { xmlParseDoc(); return 0; }
/* end */
--------------------
/usr/share/site/x86_64-unknown-linux-gnu:
#!/bin/sh
# Site script for configure. It is resourced via $CONFIG_SITE environment varaible.
# If user did not specify libdir, guess the correct target:
# Use lib64 for 64 bit bi-arch targets, keep the default for the rest.
if test "$libdir" = '${exec_prefix}/lib' ; then
ac_config_site_64bit_host=NONE
case "$host" in
"" )
# User did not specify host target.
# The native platform x86_64 is a bi-arch platform.
# Try to detect cross-compilation to inferior architecture.
# We are trying to guess 32-bit target compilation. It's not as easy as
# it sounds, as there is possible several intermediate combinations.
ac_config_site_cross_to_32bit_host=NONE
# User defined -m32 in CFLAGS or CXXFLAGS or CC or CXX:
# (It's sufficient for 32-bit, but alone may cause mis-behavior of some checks.)
case "$CFLAGS $CXXFLAGS $CC $CXX" in
*-m32*)
ac_config_site_cross_to_32bit_host=YES
;;
esac
# Running with linux32:
# (Changes detected platform, but not the toolchain target.)
case "`/bin/uname -i`" in
x86_64 | ppc64 | s390x )
;;
* )
ac_config_site_cross_to_32bit_host=YES
;;
esac
if test "x$ac_config_site_cross_to_32bit_host" = xNONE; then
ac_config_site_64bit_host=YES
fi
;;
*x86_64* | *ppc64* | *s390x* )
ac_config_site_64bit_host=YES
;;
esac
if test "x$ac_config_site_64bit_host" = xYES; then
libdir='${exec_prefix}/lib64'
fi
fi
# If user did not specify libexecdir, set the correct target:
# Nor FHS nor openSUSE allow prefix/libexec. Let's default to prefix/lib.
if test "$libexecdir" = '${exec_prefix}/libexec' ; then
libexecdir='${exec_prefix}/lib'
fi
# Continue with the standard behavior of configure defined in AC_SITE_LOAD:
if test "x$prefix" != xNONE; then
ac_site_file1=$prefix/share/config.site
ac_site_file2=$prefix/etc/config.site
else
ac_site_file1=$ac_default_prefix/share/config.site
ac_site_file2=$ac_default_prefix/etc/config.site
fi
for ac_site_file in "$ac_site_file1" "$ac_site_file2"
do
test "x$ac_site_file" = xNONE && continue
if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
{ $as_echo "/usr/share/site/x86_64-unknown-linux-gnu:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
$as_echo "/usr/share/site/x86_64-unknown-linux-gnu: loading site script $ac_site_file" >&6;}
sed 's/^/| /' "$ac_site_file" >&5
. "$ac_site_file" \
|| { { $as_echo "/usr/share/site/x86_64-unknown-linux-gnu:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "/usr/share/site/x86_64-unknown-linux-gnu: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "failed to load site script $ac_site_file
See \`config.log' for more details" "$LINENO" 5; }
fi
done
Hi,
Thanks for raising this issue. We'd certainly be willing to accept a patch to support openSUSE.
Unfortunately, I've never used SUSE or openSUSE and am not prepared to try to find a working configuration and diagnose this issue. I'd welcome some instructions on how to prepare a docker image to reproduce what you're seeing, but generally my expectation is that people with an interest in Nokogiri support for a distro will help provide that support (e.g. #1543 for OpenBSD support). Make sense?
First, thanks for taking the time, and for Nokogiri. I use the heck out of it, so I really appreciate what you and Team Nokogiri have made here.
I wish I had the time or expertise to make a larger contribution here; sadly, I've spent time I don't have figuring this out, and I don't have more than a well-specified, easy to reproduce bug report, so I'll likely have to move on and --use-system-libraries
like many others.
That said, I don't think this is strongly related to OpenSUSE since I can reproduce it on a Mac. This seems strongly related to how Nokogiri uses configure and builds its own libxml/libxslt. I know far less about how this works than you and Team Nokogiri, and I've already proven I'm not very effective at figuring it out. I've already given all of the time I can without blowing a deadline; I wish I could do more, but I've got to move on now.
If you take /usr/share/site/x86_64-unknown-linux-gnu
from above, put it somewhere on any 64-bit system (like my MBP running MacOS Sierra 10.12.1), and point CONFIG_SITE
to it, you can reproduce the issue:
Last login: Wed Jan 4 07:29:40 on ttys003
You have mail.
purp@tinyjoy:~ [07:30:55] <501>$ rbenv shell 2.3.3
purp@tinyjoy:~ [07:31:05] <502>$ gem search --local nokogiri
*** LOCAL GEMS ***
purp@tinyjoy:~ [07:31:11] <503>$ cat ~/tmp/config-site
#!/bin/sh
# Site script for configure. It is resourced via $CONFIG_SITE environment varaible.
# If user did not specify libdir, guess the correct target:
# Use lib64 for 64 bit bi-arch targets, keep the default for the rest.
if test "$libdir" = '${exec_prefix}/lib' ; then
ac_config_site_64bit_host=NONE
case "$host" in
"" )
# User did not specify host target.
# The native platform x86_64 is a bi-arch platform.
# Try to detect cross-compilation to inferior architecture.
# We are trying to guess 32-bit target compilation. It's not as easy as
# it sounds, as there is possible several intermediate combinations.
ac_config_site_cross_to_32bit_host=NONE
# User defined -m32 in CFLAGS or CXXFLAGS or CC or CXX:
# (It's sufficient for 32-bit, but alone may cause mis-behavior of some checks.)
case "$CFLAGS $CXXFLAGS $CC $CXX" in
*-m32*)
ac_config_site_cross_to_32bit_host=YES
;;
esac
# Running with linux32:
# (Changes detected platform, but not the toolchain target.)
case "`/bin/uname -i`" in
x86_64 | ppc64 | s390x )
;;
* )
ac_config_site_cross_to_32bit_host=YES
;;
esac
if test "x$ac_config_site_cross_to_32bit_host" = xNONE; then
ac_config_site_64bit_host=YES
fi
;;
*x86_64* | *ppc64* | *s390x* )
ac_config_site_64bit_host=YES
;;
esac
if test "x$ac_config_site_64bit_host" = xYES; then
libdir='${exec_prefix}/lib64'
fi
fi
# If user did not specify libexecdir, set the correct target:
# Nor FHS nor openSUSE allow prefix/libexec. Let's default to prefix/lib.
if test "$libexecdir" = '${exec_prefix}/libexec' ; then
libexecdir='${exec_prefix}/lib'
fi
# Continue with the standard behavior of configure defined in AC_SITE_LOAD:
if test "x$prefix" != xNONE; then
ac_site_file1=$prefix/share/config.site
ac_site_file2=$prefix/etc/config.site
else
ac_site_file1=$ac_default_prefix/share/config.site
ac_site_file2=$ac_default_prefix/etc/config.site
fi
for ac_site_file in "$ac_site_file1" "$ac_site_file2"
do
test "x$ac_site_file" = xNONE && continue
if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
{ $as_echo "/usr/share/site/x86_64-unknown-linux-gnu:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
$as_echo "/usr/share/site/x86_64-unknown-linux-gnu: loading site script $ac_site_file" >&6;}
sed 's/^/| /' "$ac_site_file" >&5
. "$ac_site_file" \
|| { { $as_echo "/usr/share/site/x86_64-unknown-linux-gnu:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "/usr/share/site/x86_64-unknown-linux-gnu: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "failed to load site script $ac_site_file
See \`config.log' for more details" "$LINENO" 5; }
fi
done
purp@tinyjoy:~ [07:31:20] <504>$ export CONFIG_SITE=/Users/purp/tmp/config-site
purp@tinyjoy:~ [07:32:01] <505>$ gem install nokogiri
Fetching: nokogiri-1.7.0.1.gem (100%)
Building native extensions. This could take a while...
ERROR: Error installing nokogiri:
ERROR: Failed to build gem native extension.
current directory: /usr/local/var/rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri
/usr/local/var/rbenv/versions/2.3.3/bin/ruby -r ./siteconf20170104-81264-1i77mcj.rb extconf.rb
checking if the C compiler accepts ... yes
checking if the C compiler accepts -Wno-error=unused-command-line-argument-hard-error-in-future... no
Building nokogiri using packaged libraries.
Using mini_portile version 2.1.0
checking for iconv.h... yes
checking for gzdopen() in -lz... yes
checking for iconv... yes
************************************************************************
IMPORTANT NOTICE:
Building Nokogiri with a packaged version of libxml2-2.9.4.
Team Nokogiri will keep on doing their best to provide security
updates in a timely manner, but if this is a concern for you and want
to use the system library instead; abort this installation process and
reinstall nokogiri as follows:
gem install nokogiri -- --use-system-libraries
[--with-xml2-config=/path/to/xml2-config]
[--with-xslt-config=/path/to/xslt-config]
If you are using Bundler, tell it to use the option:
bundle config build.nokogiri --use-system-libraries
bundle install
Note, however, that nokogiri is not fully compatible with arbitrary
versions of libxml2 provided by OS/package vendors.
************************************************************************
Extracting libxml2-2.9.4.tar.gz into tmp/x86_64-apple-darwin16.1.0/ports/libxml2/2.9.4... OK
Running 'configure' for libxml2 2.9.4... OK
Running 'compile' for libxml2 2.9.4... OK
Running 'install' for libxml2 2.9.4... OK
Activating libxml2 2.9.4 (from /usr/local/var/rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ports/x86_64-apple-darwin16.1.0/libxml2/2.9.4)...
************************************************************************
IMPORTANT NOTICE:
Building Nokogiri with a packaged version of libxslt-1.1.29.
Team Nokogiri will keep on doing their best to provide security
updates in a timely manner, but if this is a concern for you and want
to use the system library instead; abort this installation process and
reinstall nokogiri as follows:
gem install nokogiri -- --use-system-libraries
[--with-xml2-config=/path/to/xml2-config]
[--with-xslt-config=/path/to/xslt-config]
If you are using Bundler, tell it to use the option:
bundle config build.nokogiri --use-system-libraries
bundle install
************************************************************************
Extracting libxslt-1.1.29.tar.gz into tmp/x86_64-apple-darwin16.1.0/ports/libxslt/1.1.29... OK
Running 'configure' for libxslt 1.1.29... OK
Running 'compile' for libxslt 1.1.29... OK
Running 'install' for libxslt 1.1.29... OK
Activating libxslt 1.1.29 (from /usr/local/var/rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ports/x86_64-apple-darwin16.1.0/libxslt/1.1.29)...
checking for main() in -llzma... yes
checking for xmlParseDoc() in libxml/parser.h... no
checking for xmlParseDoc() in -lxml2... no
checking for xmlParseDoc() in -llibxml2... no
-----
libxml2 is missing. Please locate mkmf.log to investigate how it is failing.
-----
*** 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
--without-make-prog
--srcdir=.
--curdir
--ruby=/usr/local/var/rbenv/versions/2.3.3/bin/$(RUBY_BASE_NAME)
--help
--clean
--use-system-libraries
--enable-static
--disable-static
--with-zlib-dir
--without-zlib-dir
--with-zlib-include
--without-zlib-include=${zlib-dir}/include
--with-zlib-lib
--without-zlib-lib=${zlib-dir}/lib
--enable-cross-build
--disable-cross-build
--with-xml2lib
--without-xml2lib
--with-libxml2lib
--without-libxml2lib
To see why this extension failed to compile, please check the mkmf.log which can be found here:
/usr/local/var/rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/extensions/x86_64-darwin-16/2.3.0-static/nokogiri-1.7.0.1/mkmf.log
extconf failed, exit code 1
Gem files will remain installed in /usr/local/var/rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1 for inspection.
Results logged to /usr/local/var/rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/extensions/x86_64-darwin-16/2.3.0-static/nokogiri-1.7.0.1/gem_make.out
purp@tinyjoy:~ [07:33:01] <506>$
I'm hoping that's enough to make it straightforward for someone with more expertise in Nokogiri's build system(s) to hunt down and squash this bug.
Also for posterity:
gem install nokogiri -- --use-system-libraries \
--with-xml2-dir=/usr \
--with-xslt-dir=/usr \
--with-exslt-dir=/usr
I can't say I understand why I had to specify those dirs as that's the system default, but it works and I'm in a hurry. Also documented in a gist that I may update someday.
I've tracked it down to hardcoded 'lib' in ext/nokogiri/extconf.rb:
if static_p
$libs = $libs.shellsplit.map do |arg|
case arg
when '-lxml2'
File.join(libxml2_recipe.path, 'lib', lib_a(arg))
when '-lxslt', '-lexslt'
File.join(libxslt_recipe.path, 'lib', lib_a(arg))
else
arg
end
end.shelljoin
end
SUSE like MacOS uses a CONFIG_SITE script to tell autoconf to use lib64, which causes trouble for the hardcoded 'lib' references above.
Hacking at my failed gem install, modifying the code to look for 'lib64' library existence and then falling back to 'lib', allows extconf.rb to complete and generate a Makefile which can then build nokogiri.
This is the solution I chose (with a similar permutation for the xslt case:
(lib64 = File.join(libxml2_recipe.path, 'lib64', lib_a(arg))) && File.exist?(lib64) ? lib64 : File.join(libxml2_recipe.path, 'lib', lib_a(arg))
I chose that strategy because the other options seemed dubious and brittle. The xml2 and xslt libraries have their path information stored in libtool .la files, pkgconfig .pc files, and -config scripts. I couldn't find documentation on libtool .la or any libtool script way of extracting the info. I didn't want to introduce any new dependency on pkgconfig. And parsing or executing *-config shell scripts would just be too ugly.
I need to get all of the nokogiri development dependency cruft together today to try to formalize this fix into a pull.
Pull request #1574 created.
I'm new to pull requests, so please be gentle. It passes all tests except for 4 skips which I can't seem to get it to divulge details on (adding --verbose doesn't change anything).
Fabulous run in 6.871694s, 201.4059 runs/s, 578.1689 assertions/s.
1384 runs, 3973 assertions, 0 failures, 0 errors, 4 skips
You have skipped tests. Run with --verbose for details.
+1 (and big thank you for nokogirl, this has been a running issue that would be great to be fixed up)
Ok, all, I need more help understanding what's going on here.
I went through the exercise of trying to reproduce what you're seeing in an opensuse docker image. Running this compiles and installs successfully:
$ docker run -it opensuse:42.1 bash
bash-4.2# zypper install -y ruby ruby-devel gcc make tar zlib-devel
...
bash-4.2# gem install nokogiri
Fetching: nokogiri-1.7.0.1.gem (100%)
Building native extensions. This could take a while...
Successfully installed nokogiri-1.7.0.1
So, I still am not able to reproduce what y'all are seeing. Help me do that, so I can fix this properly?
Finally, when I try to use that installation of nokogiri, I get a new error y'all haven't mentioned, and would like some help diagnosing it:
bash-4.2# irb
irb(main):001:0> require 'nokogiri'
LoadError: libexslt.so.0: cannot open shared object file: No such file or directory - /usr/lib64/ruby/gems/2.1.0/extensions/x86_64-linux/2.1.0/nokogiri-1.7.0.1/nokogiri/nokogiri.so
from /usr/lib64/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /usr/lib64/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /usr/lib64/ruby/gems/2.1.0/gems/nokogiri-1.7.0.1/lib/nokogiri.rb:32:in `rescue in <top (required)>'
from /usr/lib64/ruby/gems/2.1.0/gems/nokogiri-1.7.0.1/lib/nokogiri.rb:28:in `<top (required)>'
from /usr/lib64/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:135:in `require'
from /usr/lib64/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:135:in `rescue in require'
from /usr/lib64/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:144:in `require'
from (irb):1
from /usr/bin/irb:11:in `<main>'
irb(main):002:0> exit
bash-4.2# find /usr -name libexslt.so.0
/usr/lib64/ruby/gems/2.1.0/gems/nokogiri-1.7.0.1/ports/x86_64-suse-linux-gnu/libxslt/1.1.29/lib/libexslt.so.0
I imagine this is cause by some related path problem; but I really don't want to start evaluating PRs for this unless I can reproduce what you're seeing, and I haven't managed to do that yet.
Can someone help me?
Also - please wrap your logs with the triple-backtick so they format well. I've gone through all the previous comments on this thread and done it for you.
I need to get to the next milestone of what my day job pays me for ;-) before I can play around with this in a docker container. Hopefully sometime next week.
I was able to reproduce my original problem using the docker opensuse 42.1 container.
My day job web application is deployed by building ruby (and a lot of other stuff) from source into a non-system location on the target system, followed by installing Rails and various other dependent gems including nokogiri.
On opensuse, the site-config package deploys a bit of autoconf script that sets up the lib64 naming convention. This script is specified by the env var CONFIG_SITE. When installing opensuse from an ISO, you get site-config by default and the default shell profiles set CONFIG_SITE.
The docker container is too stripped down and does not include site-config and the other glue which sets up the env var via shell profiles. Once you make the docker image more real-life, the nokogiri failure is reproducible.
Invoke the docker image as above:
docker run -it opensuse:42.1 bash
Then from within the docker bash shell, do the following to reproduce my original problem:
zypper install -y aaa_base gcc libopenssl-devel make site-config tar wget zlib-devel bash --login cd $HOME wget https://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.3.tar.gz tar xvfz ruby-2.3.3.tar.gz cd ruby-2.3.3 ./configure --prefix=$HOME/stack --disable-install-doc make make test make install cd .. $HOME/stack/bin/gem install nokogiri --no-document
The nokogiri gem install will fail the same way as in my original posting above, i.e. looking for its bundled libs in a "lib" subdirectory rather than the "lib64" subdirectory where autoconf decided they would be built.
@mbixby17451 It looks like you're building your own Ruby; I'd like to eliminate the possibility that the problem you're seeing is due to how Ruby is built, versus how Nokogiri behaves on OpenSuse.
Can you reproduce this issue using the ruby
package that zypper installs?
@flavorjones I provided instructions above to reproduce on a MacBook Pro. They work using any version of Ruby. I don't think this is a OpenSUSE issue; this is the thing @mbixby17451 pointed out: there's a hard-coded 'lib' where Nokogiri should be using the appropriate variable.
@purp Thanks for the additional comments. However, I've not been able to reproduce this (I'm not a Mac user); and unless and until I can reproduce it, I can't fix it (nor am I comfortable accepting a blind fix from a non-core contributor).
Can you help me reproduce this issue?
@flavorjones Totally understand the (proper) caution about taking code from randos like me. I can certainly try to help reproduce it.
Did you try the steps I gave in my earlier comment? I think if you put that content into a file, set that environment variable, and try to install nokogiri, it should happen in any OS on any architecture.
If that fails to reproduce the issue, tell me what OS/arch you're using and I'll see if I can manage to reproduce there.
OpenSuse Leap 42.2 user here.
Just want to add that in RVM env I'm not able to install nokogiri 1.6.8.1 using rvm ruby 2.2.6 due to 'libxml2 missing' error (log attached). mkmf_nokogiri_log.txt
I have to use this workaround:
gem install nokogiri -v 1.6.8.1 -- --use-system-libraries --with-xml2-config=/usr/bin/xml2-config
However,
in system env ruby 2.1, I'm able to install nokogiri without problem:
sudo gem install nokogiri -v 1.6.8.1
@purp I read your steps for reproducing earlier, but I have to admit I don't quite understand them.
As I asked in my earlier comment, the ideal is for someone to provide instructions on how to reproduce this in a Docker image.
And I showed my attempt to reproduce this in Docker in another earlier comment, so really I just want guidance on how to see what you're seeing.
For what it's worth, my hesitation has nothing to do with you being a "rando" ;). It has to do with a) understanding the underlying issue so that I can b) determine if the fix is appropriate or whether there's a better fix, and c) maintain and support that fix in the future.
I'll re-show my work. Using the opensuse:leap
docker image ...
If I do this:
zypper install -y ruby ruby-devel gcc make tar zlib-devel
gem install -V nokogiri --no-rdoc --no-ri
it totally works:
bash-4.3# irb -rnokogiri
irb(main):001:0> Nokogiri::VERSION_INFO
=> {"warnings"=>[], "nokogiri"=>"1.7.0.1", "ruby"=>{"version"=>"2.1.2", "platform"=>"x86_64-linux-gnu", "description"=>"ruby 2.1.2p95 (2014-05-08 revision 45877) [x86_64-linux-gnu]", "engine"=>"ruby"}, "libxml"=>{"binding"=>"extension", "source"=>"system", "compiled"=>"2.9.4", "loaded"=>"2.9.4"}}
If I do this:
zypper install -y ruby ruby-devel gcc make libxml2-devel libxslt-devel
gem install -V nokogiri --no-rdoc --no-ri -- --use-system-libraries
it totally works:
bash-4.3# irb -rnokogiri -ryaml
irb(main):001:0> puts Nokogiri::VERSION_INFO.to_yaml
---
warnings: []
nokogiri: 1.7.0.1
ruby:
version: 2.1.2
platform: x86_64-linux-gnu
description: ruby 2.1.2p95 (2014-05-08 revision 45877) [x86_64-linux-gnu]
engine: ruby
libxml:
binding: extension
source: packaged
libxml2_path: "/usr/lib64/ruby/gems/2.1.0/gems/nokogiri-1.7.0.1/ports/x86_64-suse-linux-gnu/libxml2/2.9.4"
libxslt_path: "/usr/lib64/ruby/gems/2.1.0/gems/nokogiri-1.7.0.1/ports/x86_64-suse-linux-gnu/libxslt/1.1.29"
libxml2_patches: []
libxslt_patches: []
compiled: 2.9.4
loaded: 2.9.4
=> nil
Note that it finds the lib64
files in this second use case.
What am I missing?
My Docker recipe above for reproducing the failure in my usage case (non-system Ruby) builds that Ruby with all default options except for directory prefix (necessary for non-system build) and suppression of doc generation (why spend the time?). I can't make it any more clear or stripped down than that and still reflect my usage case where nokogiri is failing.
Nokogiri itself supports the same usage case of bundling essential dependencies and building in non-system locations rather than relying possibly incompatible system packages. So what I'm doing with a non-system Ruby should not be particularly surprising or unreasonable.
@mbixby17451 I asked in my comment above if you could reproduce this issue with the system Ruby because I'm trying to bisect the problem and remove variables until it's clear where the problem lies.
if you can't reproduce this issue using the system ruby, then can you help me understand why it's assumed the problem is with Nokogiri and not with how the non-system Ruby is being built?
I'm still digging ... I think I've reproduced this root issue (albeit with different symptoms) using the system ruby. Give me a bit.
I believe the issue has to do with how the shared object file nokogiri.so
is being built on OpenSuse.
On Ubuntu and other Linux systems, the makefile created by extconf.rb
contains a line like:
LIBPATH = -L. -L$(libdir) -Wl,-R$(libdir) -L/home/flavorjones/code/oss/nokogiri/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib -Wl,-R/home/flavorjones/code/oss/nokogiri/ports/x86_64-pc-linux-gnu/libxml2/2.9.4/lib -L/home/flavorjones/code/oss/nokogiri/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib -Wl,-R/home/flavorjones/code/oss/nokogiri/ports/x86_64-pc-linux-gnu/libxslt/1.1.29/lib
the key portions being the -Wl,-R<directory>
which uses ld
's -rpath
option to add directories to the (eventual) runtime's library search path.
The same line in OpenSuse's makefile:
LIBPATH = -L. -L$(libdir) -L/nokogiri/ports/x86_64-suse-linux-gnu/libxml2/2.9.4/lib64 -L/nokogiri/ports/x86_64-suse-linux-gnu/libxslt/1.1.29/lib64 -L/lib64
Anybody know why OpenSuse is being difficult about this? I'll keep poking.
OK, so with the Ruby on my Ubuntu development machine:
require 'rbconfig'
puts RbConfig::CONFIG["RPATHFLAG"]
# => " -Wl,-R%1$-s"
but on OpenSuse:
# => ""
(this is with the system ruby, haven't tried with my own compiled Ruby yet) ... this is part of the problem.
I am unable to get the OpenSUSE system ruby to fail. RPATHFLAG is as you note on system vs. non-system ruby.
However, I can turn my docker nokogiri failure duplication recipe into successful nokogiri installation if I unset the CONFIG_SITE env var (that comes from the OpenSUSE site-config and aaa_base packages) prior to running the non-system ruby configure script.
CONFIG_SITE points to a bit of autoconf script that imposes the "lib64" naming convention. Thus, when I unset that prior to building a non-system ruby, the usual "lib" naming convention is used, matching the expectation of the hardcoded "lib" in nokogiri.
RPATHFLAG is the same for me when building non-system ruby in both the success and failure cases. Thus, it alone seems unlikely to be the cause of the failure.
This seems clearly tied to the CONFIG_SITE/autoconf settings, as that's the way I can reproduce it on any 64-bit x86 system, Ubuntu included.
/usr/share/site/x86_64-unknown-linux-gnu
from an OpenSUSE Leap 42 system and copy it to /tmp/config_site_from_opensuse
on the system you'd like to use to reproduce this.export CONFIG_SITE=/tmp/config_site_from_opensuse
gem install nokogiri
Contents of /usr/share/site/x86_64-unknown-linux-gnu
below:
#!/bin/sh
# Site script for configure. It is resourced via $CONFIG_SITE environment varaible.
# If user did not specify libdir, guess the correct target:
# Use lib64 for 64 bit bi-arch targets, keep the default for the rest.
if test "$libdir" = '${exec_prefix}/lib' ; then
ac_config_site_64bit_host=NONE
case "$host" in
"" )
# User did not specify host target.
# The native platform x86_64 is a bi-arch platform.
# Try to detect cross-compilation to inferior architecture.
# We are trying to guess 32-bit target compilation. It's not as easy as
# it sounds, as there is possible several intermediate combinations.
ac_config_site_cross_to_32bit_host=NONE
# User defined -m32 in CFLAGS or CXXFLAGS or CC or CXX:
# (It's sufficient for 32-bit, but alone may cause mis-behavior of some checks.)
case "$CFLAGS $CXXFLAGS $CC $CXX" in
*-m32*)
ac_config_site_cross_to_32bit_host=YES
;;
esac
# Running with linux32:
# (Changes detected platform, but not the toolchain target.)
case "`/bin/uname -i`" in
x86_64 | ppc64 | s390x )
;;
* )
ac_config_site_cross_to_32bit_host=YES
;;
esac
if test "x$ac_config_site_cross_to_32bit_host" = xNONE; then
ac_config_site_64bit_host=YES
fi
;;
*x86_64* | *ppc64* | *s390x* )
ac_config_site_64bit_host=YES
;;
esac
if test "x$ac_config_site_64bit_host" = xYES; then
libdir='${exec_prefix}/lib64'
fi
fi
# If user did not specify libexecdir, set the correct target:
# Nor FHS nor openSUSE allow prefix/libexec. Let's default to prefix/lib.
if test "$libexecdir" = '${exec_prefix}/libexec' ; then
libexecdir='${exec_prefix}/lib'
fi
# Continue with the standard behavior of configure defined in AC_SITE_LOAD:
if test "x$prefix" != xNONE; then
ac_site_file1=$prefix/share/config.site
ac_site_file2=$prefix/etc/config.site
else
ac_site_file1=$ac_default_prefix/share/config.site
ac_site_file2=$ac_default_prefix/etc/config.site
fi
for ac_site_file in "$ac_site_file1" "$ac_site_file2"
do
test "x$ac_site_file" = xNONE && continue
if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
{ $as_echo "/usr/share/site/x86_64-unknown-linux-gnu:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
$as_echo "/usr/share/site/x86_64-unknown-linux-gnu: loading site script $ac_site_file" >&6;}
sed 's/^/| /' "$ac_site_file" >&5
. "$ac_site_file" \
|| { { $as_echo "/usr/share/site/x86_64-unknown-linux-gnu:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
$as_echo "/usr/share/site/x86_64-unknown-linux-gnu: error: in \`$ac_pwd':" >&2;}
as_fn_error $? "failed to load site script $ac_site_file
See \`config.log' for more details" "$LINENO" 5; }
fi
done
OK, some more progress: When I build my own ruby, using @mbixby17451's recipe from this comment, RPATHFLAG
is set correctly:
# ruby -rrbconfig -e "puts RbConfig::CONFIG['RPATHFLAG']"
-Wl,-R%1$-s
And, what's more, nokogiri installs properly:
# gem install nokogiri -V
HEAD https://api.rubygems.org/api/v1/dependencies
200 OK
GET https://api.rubygems.org/api/v1/dependencies?gems=nokogiri
200 OK
Getting SRV record failed: DNS result has no information for _rubygems._tcp.api.rubygems.org
GET https://api.rubygems.org/api/v1/dependencies?gems=mini_portile2
200 OK
Downloading gem nokogiri-1.7.0.1.gem
GET https://api.rubygems.org/gems/nokogiri-1.7.0.1.gem
200 OK
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/.autotest
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/.cross_rubies
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/.editorconfig
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/.gemtest
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/.travis.yml
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/CHANGELOG.md
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/CONTRIBUTING.md
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/C_CODING_STYLE.rdoc
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/Gemfile
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/LICENSE.txt
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/Manifest.txt
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/README.md
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ROADMAP.md
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/Rakefile
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/STANDARD_RESPONSES.md
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/Y_U_NO_GEMSPEC.md
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/appveyor.yml
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/bin/nokogiri
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/build_all
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/dependencies.yml
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/depend
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/extconf.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/html_document.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/html_document.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/html_element_description.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/html_element_description.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/html_entity_lookup.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/html_entity_lookup.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/html_sax_parser_context.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/html_sax_parser_context.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/html_sax_push_parser.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/html_sax_push_parser.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/nokogiri.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/nokogiri.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_attr.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_attr.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_attribute_decl.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_attribute_decl.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_cdata.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_cdata.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_comment.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_comment.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_document.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_document.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_document_fragment.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_document_fragment.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_dtd.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_dtd.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_element_content.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_element_content.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_element_decl.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_element_decl.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_encoding_handler.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_encoding_handler.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_entity_decl.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_entity_decl.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_entity_reference.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_entity_reference.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_io.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_io.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_libxml2_hacks.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_libxml2_hacks.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_namespace.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_namespace.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_node.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_node.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_node_set.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_node_set.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_processing_instruction.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_processing_instruction.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_reader.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_reader.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_relax_ng.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_relax_ng.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_sax_parser.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_sax_parser.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_sax_parser_context.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_sax_parser_context.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_sax_push_parser.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_sax_push_parser.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_schema.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_schema.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_syntax_error.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_syntax_error.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_text.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_text.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_xpath_context.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xml_xpath_context.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xslt_stylesheet.c
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/xslt_stylesheet.h
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/css.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/css/node.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/css/parser.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/css/parser.y
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/css/parser_extras.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/css/syntax_error.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/css/tokenizer.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/css/tokenizer.rex
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/css/xpath_visitor.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/decorators/slop.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/html.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/html/builder.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/html/document.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/html/document_fragment.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/html/element_description.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/html/element_description_defaults.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/html/entity_lookup.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/html/sax/parser.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/html/sax/parser_context.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/html/sax/push_parser.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/syntax_error.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/version.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/attr.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/attribute_decl.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/builder.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/cdata.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/character_data.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/document.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/document_fragment.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/dtd.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/element_content.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/element_decl.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/entity_decl.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/namespace.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/node.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/node/save_options.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/node_set.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/notation.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/parse_options.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/pp.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/pp/character_data.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/pp/node.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/processing_instruction.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/reader.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/relax_ng.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/sax.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/sax/document.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/sax/parser.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/sax/parser_context.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/sax/push_parser.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/schema.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/searchable.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/syntax_error.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/text.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/xpath.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/xpath/syntax_error.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xml/xpath_context.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xslt.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/nokogiri/xslt/stylesheet.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/lib/xsd/xmlparser/nokogiri.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/patches/sort-patches-by-date
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ports/archives/libxml2-2.9.4.tar.gz
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ports/archives/libxslt-1.1.29.tar.gz
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/suppressions/README.txt
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/suppressions/nokogiri_ree-1.8.7.358.supp
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/suppressions/nokogiri_ruby-1.8.7.370.supp
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/suppressions/nokogiri_ruby-1.9.2.320.supp
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/suppressions/nokogiri_ruby-1.9.3.327.supp
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/tasks/test.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/css/test_nthiness.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/css/test_parser.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/css/test_tokenizer.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/css/test_xpath_visitor.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/decorators/test_slop.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/2ch.html
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/GH_1042.html
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/address_book.rlx
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/address_book.xml
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/atom.xml
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/bar/bar.xsd
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/bogus.xml
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/dont_hurt_em_why.xml
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/encoding.html
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/encoding.xhtml
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/exslt.xml
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/exslt.xslt
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/foo/foo.xsd
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/metacharset.html
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/namespace_pressure_test.xml
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/noencoding.html
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/po.xml
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/po.xsd
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/saml/saml20assertion_schema.xsd
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/saml/saml20protocol_schema.xsd
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/saml/xenc_schema.xsd
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/saml/xmldsig_schema.xsd
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/shift_jis.html
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/shift_jis.xml
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/shift_jis_no_charset.html
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/slow-xpath.xml
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/snuggles.xml
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/staff.dtd
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/staff.xml
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/staff.xslt
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/test_document_url/bar.xml
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/test_document_url/document.dtd
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/test_document_url/document.xml
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/tlm.html
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/to_be_xincluded.xml
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/valid_bar.xml
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/files/xinclude.xml
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/helper.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/html/sax/test_parser.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/html/sax/test_parser_context.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/html/sax/test_push_parser.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/html/test_builder.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/html/test_document.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/html/test_document_encoding.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/html/test_document_fragment.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/html/test_element_description.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/html/test_named_characters.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/html/test_node.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/html/test_node_encoding.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/namespaces/test_additional_namespaces_in_builder_doc.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/namespaces/test_namespaces_aliased_default.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/namespaces/test_namespaces_in_builder_doc.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/namespaces/test_namespaces_in_cloned_doc.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/namespaces/test_namespaces_in_created_doc.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/namespaces/test_namespaces_in_parsed_doc.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/namespaces/test_namespaces_preservation.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/test_convert_xpath.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/test_css_cache.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/test_encoding_handler.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/test_memory_leak.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/test_nokogiri.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/test_soap4r_sax.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/test_xslt_transforms.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/node/test_save_options.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/node/test_subclass.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/sax/test_parser.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/sax/test_parser_context.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/sax/test_push_parser.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_attr.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_attribute_decl.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_builder.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_c14n.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_cdata.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_comment.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_document.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_document_encoding.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_document_fragment.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_dtd.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_dtd_encoding.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_element_content.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_element_decl.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_entity_decl.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_entity_reference.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_namespace.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_node.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_node_attributes.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_node_encoding.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_node_inheritance.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_node_reparenting.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_node_set.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_parse_options.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_processing_instruction.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_reader.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_reader_encoding.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_relax_ng.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_schema.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_syntax_error.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_text.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_unparented_node.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_xinclude.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xml/test_xpath.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xslt/test_custom_functions.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test/xslt/test_exception_handling.rb
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/test_all
Building native extensions. This could take a while...
current directory: /root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri
/root/ruby-2.3.3/bin/ruby -r ./siteconf20170216-7781-g7x971.rb extconf.rb
checking if the C compiler accepts ... yes
Building nokogiri using packaged libraries.
Using mini_portile version 2.1.0
checking for gzdopen() in -lz... yes
checking for iconv... yes
************************************************************************
IMPORTANT NOTICE:
Building Nokogiri with a packaged version of libxml2-2.9.4.
Team Nokogiri will keep on doing their best to provide security
updates in a timely manner, but if this is a concern for you and want
to use the system library instead; abort this installation process and
reinstall nokogiri as follows:
gem install nokogiri -- --use-system-libraries
[--with-xml2-config=/path/to/xml2-config]
[--with-xslt-config=/path/to/xslt-config]
If you are using Bundler, tell it to use the option:
bundle config build.nokogiri --use-system-libraries
bundle install
Note, however, that nokogiri is not fully compatible with arbitrary
versions of libxml2 provided by OS/package vendors.
************************************************************************
Extracting libxml2-2.9.4.tar.gz into tmp/x86_64-pc-linux-gnu/ports/libxml2/2.9.4... OK
Running 'configure' for libxml2 2.9.4... OK
Running 'compile' for libxml2 2.9.4... OK
Running 'install' for libxml2 2.9.4... OK
Activating libxml2 2.9.4 (from /root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ports/x86_64-pc-linux-gnu/libxml2/2.9.4)...
************************************************************************
IMPORTANT NOTICE:
Building Nokogiri with a packaged version of libxslt-1.1.29.
Team Nokogiri will keep on doing their best to provide security
updates in a timely manner, but if this is a concern for you and want
to use the system library instead; abort this installation process and
reinstall nokogiri as follows:
gem install nokogiri -- --use-system-libraries
[--with-xml2-config=/path/to/xml2-config]
[--with-xslt-config=/path/to/xslt-config]
If you are using Bundler, tell it to use the option:
bundle config build.nokogiri --use-system-libraries
bundle install
************************************************************************
Extracting libxslt-1.1.29.tar.gz into tmp/x86_64-pc-linux-gnu/ports/libxslt/1.1.29... OK
Running 'configure' for libxslt 1.1.29... OK
Running 'compile' for libxslt 1.1.29... OK
Running 'install' for libxslt 1.1.29... OK
Activating libxslt 1.1.29 (from /root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ports/x86_64-pc-linux-gnu/libxslt/1.1.29)...
checking for main() in -llzma... no
checking for xmlParseDoc() in libxml/parser.h... yes
checking for xsltParseStylesheetDoc() in libxslt/xslt.h... yes
checking for exsltFuncRegister() in libexslt/exslt.h... yes
checking for xmlHasFeature()... yes
checking for xmlFirstElementChild()... yes
checking for xmlRelaxNGSetParserStructuredErrors()... yes
checking for xmlRelaxNGSetParserStructuredErrors()... yes
checking for xmlRelaxNGSetValidStructuredErrors()... yes
checking for xmlSchemaSetValidStructuredErrors()... yes
checking for xmlSchemaSetParserStructuredErrors()... yes
creating Makefile
current directory: /root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri
make "DESTDIR=" clean
current directory: /root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri
make "DESTDIR="
compiling xml_reader.c
compiling nokogiri.c
compiling xml_element_content.c
compiling xml_libxml2_hacks.c
compiling xml_comment.c
compiling xml_node.c
xml_node.c: In function 'reparent_node_with':
xml_node.c:170:7: warning: enumeration value 'XML_ATTRIBUTE_NODE' not handled in switch [-Wswitch]
switch (reparentee->type) {
^
xml_node.c:170:7: warning: enumeration value 'XML_ENTITY_NODE' not handled in switch [-Wswitch]
xml_node.c:170:7: warning: enumeration value 'XML_DOCUMENT_NODE' not handled in switch [-Wswitch]
xml_node.c:170:7: warning: enumeration value 'XML_DOCUMENT_FRAG_NODE' not handled in switch [-Wswitch]
xml_node.c:170:7: warning: enumeration value 'XML_NOTATION_NODE' not handled in switch [-Wswitch]
xml_node.c:170:7: warning: enumeration value 'XML_HTML_DOCUMENT_NODE' not handled in switch [-Wswitch]
xml_node.c:170:7: warning: enumeration value 'XML_DTD_NODE' not handled in switch [-Wswitch]
xml_node.c:170:7: warning: enumeration value 'XML_ELEMENT_DECL' not handled in switch [-Wswitch]
xml_node.c:170:7: warning: enumeration value 'XML_ATTRIBUTE_DECL' not handled in switch [-Wswitch]
xml_node.c:170:7: warning: enumeration value 'XML_ENTITY_DECL' not handled in switch [-Wswitch]
xml_node.c:170:7: warning: enumeration value 'XML_NAMESPACE_DECL' not handled in switch [-Wswitch]
xml_node.c:170:7: warning: enumeration value 'XML_XINCLUDE_START' not handled in switch [-Wswitch]
xml_node.c:170:7: warning: enumeration value 'XML_XINCLUDE_END' not handled in switch [-Wswitch]
xml_node.c:170:7: warning: enumeration value 'XML_DOCB_DOCUMENT_NODE' not handled in switch [-Wswitch]
xml_node.c:188:7: warning: enumeration value 'XML_ATTRIBUTE_NODE' not handled in switch [-Wswitch]
switch (reparentee->type) {
^
xml_node.c:188:7: warning: enumeration value 'XML_ENTITY_NODE' not handled in switch [-Wswitch]
xml_node.c:188:7: warning: enumeration value 'XML_DOCUMENT_NODE' not handled in switch [-Wswitch]
xml_node.c:188:7: warning: enumeration value 'XML_DOCUMENT_TYPE_NODE' not handled in switch [-Wswitch]
xml_node.c:188:7: warning: enumeration value 'XML_DOCUMENT_FRAG_NODE' not handled in switch [-Wswitch]
xml_node.c:188:7: warning: enumeration value 'XML_NOTATION_NODE' not handled in switch [-Wswitch]
xml_node.c:188:7: warning: enumeration value 'XML_HTML_DOCUMENT_NODE' not handled in switch [-Wswitch]
xml_node.c:188:7: warning: enumeration value 'XML_DTD_NODE' not handled in switch [-Wswitch]
xml_node.c:188:7: warning: enumeration value 'XML_ELEMENT_DECL' not handled in switch [-Wswitch]
xml_node.c:188:7: warning: enumeration value 'XML_ATTRIBUTE_DECL' not handled in switch [-Wswitch]
xml_node.c:188:7: warning: enumeration value 'XML_ENTITY_DECL' not handled in switch [-Wswitch]
xml_node.c:188:7: warning: enumeration value 'XML_NAMESPACE_DECL' not handled in switch [-Wswitch]
xml_node.c:188:7: warning: enumeration value 'XML_XINCLUDE_START' not handled in switch [-Wswitch]
xml_node.c:188:7: warning: enumeration value 'XML_XINCLUDE_END' not handled in switch [-Wswitch]
xml_node.c:188:7: warning: enumeration value 'XML_DOCB_DOCUMENT_NODE' not handled in switch [-Wswitch]
xml_node.c:199:7: warning: enumeration value 'XML_ELEMENT_NODE' not handled in switch [-Wswitch]
switch (reparentee->type) {
^
xml_node.c:199:7: warning: enumeration value 'XML_ATTRIBUTE_NODE' not handled in switch [-Wswitch]
xml_node.c:199:7: warning: enumeration value 'XML_CDATA_SECTION_NODE' not handled in switch [-Wswitch]
xml_node.c:199:7: warning: enumeration value 'XML_ENTITY_NODE' not handled in switch [-Wswitch]
xml_node.c:199:7: warning: enumeration value 'XML_PI_NODE' not handled in switch [-Wswitch]
xml_node.c:199:7: warning: enumeration value 'XML_COMMENT_NODE' not handled in switch [-Wswitch]
xml_node.c:199:7: warning: enumeration value 'XML_DOCUMENT_NODE' not handled in switch [-Wswitch]
xml_node.c:199:7: warning: enumeration value 'XML_DOCUMENT_TYPE_NODE' not handled in switch [-Wswitch]
xml_node.c:199:7: warning: enumeration value 'XML_DOCUMENT_FRAG_NODE' not handled in switch [-Wswitch]
xml_node.c:199:7: warning: enumeration value 'XML_NOTATION_NODE' not handled in switch [-Wswitch]
xml_node.c:199:7: warning: enumeration value 'XML_HTML_DOCUMENT_NODE' not handled in switch [-Wswitch]
xml_node.c:199:7: warning: enumeration value 'XML_DTD_NODE' not handled in switch [-Wswitch]
xml_node.c:199:7: warning: enumeration value 'XML_ELEMENT_DECL' not handled in switch [-Wswitch]
xml_node.c:199:7: warning: enumeration value 'XML_ATTRIBUTE_DECL' not handled in switch [-Wswitch]
xml_node.c:199:7: warning: enumeration value 'XML_ENTITY_DECL' not handled in switch [-Wswitch]
xml_node.c:199:7: warning: enumeration value 'XML_NAMESPACE_DECL' not handled in switch [-Wswitch]
xml_node.c:199:7: warning: enumeration value 'XML_XINCLUDE_START' not handled in switch [-Wswitch]
xml_node.c:199:7: warning: enumeration value 'XML_XINCLUDE_END' not handled in switch [-Wswitch]
xml_node.c:199:7: warning: enumeration value 'XML_DOCB_DOCUMENT_NODE' not handled in switch [-Wswitch]
xml_node.c:167:5: warning: enumeration value 'XML_CDATA_SECTION_NODE' not handled in switch [-Wswitch]
switch (parent->type) {
^
xml_node.c:167:5: warning: enumeration value 'XML_ENTITY_NODE' not handled in switch [-Wswitch]
xml_node.c:167:5: warning: enumeration value 'XML_PI_NODE' not handled in switch [-Wswitch]
xml_node.c:167:5: warning: enumeration value 'XML_COMMENT_NODE' not handled in switch [-Wswitch]
xml_node.c:167:5: warning: enumeration value 'XML_DOCUMENT_TYPE_NODE' not handled in switch [-Wswitch]
xml_node.c:167:5: warning: enumeration value 'XML_NOTATION_NODE' not handled in switch [-Wswitch]
xml_node.c:167:5: warning: enumeration value 'XML_DTD_NODE' not handled in switch [-Wswitch]
xml_node.c:167:5: warning: enumeration value 'XML_ELEMENT_DECL' not handled in switch [-Wswitch]
xml_node.c:167:5: warning: enumeration value 'XML_ATTRIBUTE_DECL' not handled in switch [-Wswitch]
xml_node.c:167:5: warning: enumeration value 'XML_ENTITY_DECL' not handled in switch [-Wswitch]
xml_node.c:167:5: warning: enumeration value 'XML_NAMESPACE_DECL' not handled in switch [-Wswitch]
xml_node.c:167:5: warning: enumeration value 'XML_XINCLUDE_START' not handled in switch [-Wswitch]
xml_node.c:167:5: warning: enumeration value 'XML_XINCLUDE_END' not handled in switch [-Wswitch]
xml_node.c:167:5: warning: enumeration value 'XML_DOCB_DOCUMENT_NODE' not handled in switch [-Wswitch]
compiling xml_text.c
compiling xml_document_fragment.c
compiling xml_syntax_error.c
compiling xml_sax_parser.c
xml_sax_parser.c: In function 'start_document':
xml_sax_parser.c:28:7: warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
VALUE version = ctxt->version ? NOKOGIRI_STR_NEW2(ctxt->version) : Qnil;
^
compiling html_element_description.c
In file included from /root/ruby-2.3.3/include/ruby-2.3.0/ruby.h:33:0,
from ./nokogiri.h:33,
from ./html_element_description.h:4,
from html_element_description.c:1:
html_element_description.c: In function 'get_description':
html_element_description.c:252:40: warning: cast discards '__attribute__((const))' qualifier from pointer target type [-Wcast-qual]
return Data_Wrap_Struct(klass, 0, 0, (void *)description);
^
/root/ruby-2.3.3/include/ruby-2.3.0/ruby/ruby.h:1167:34: note: in definition of macro 'Data_Wrap_Struct'
rb_data_object_wrap((klass),(sval),(RUBY_DATA_FUNC)(mark),(RUBY_DATA_FUNC)(free))
^
compiling xml_sax_push_parser.c
compiling xml_attr.c
compiling xml_entity_decl.c
compiling xml_relax_ng.c
compiling xml_element_decl.c
compiling xml_io.c
compiling xml_sax_parser_context.c
compiling xml_node_set.c
compiling xslt_stylesheet.c
xslt_stylesheet.c: In function 'initFunc':
xslt_stylesheet.c:217:5: warning: passing argument 1 of 'rb_data_object_get' makes integer from pointer without a cast [enabled by default]
Data_Get_Struct(ctxt->style->_private, nokogiriXsltStylesheetTuple,
^
In file included from /root/ruby-2.3.3/include/ruby-2.3.0/ruby.h:33:0,
from ./nokogiri.h:33,
from ./xslt_stylesheet.h:4,
from xslt_stylesheet.c:1:
/root/ruby-2.3.3/include/ruby-2.3.0/ruby/ruby.h:1397:1: note: expected 'VALUE' but argument is of type 'void *'
rb_data_object_get(VALUE obj)
^
xslt_stylesheet.c: In function 'shutdownFunc':
xslt_stylesheet.c:230:5: warning: passing argument 1 of 'rb_data_object_get' makes integer from pointer without a cast [enabled by default]
Data_Get_Struct(ctxt->style->_private, nokogiriXsltStylesheetTuple,
^
In file included from /root/ruby-2.3.3/include/ruby-2.3.0/ruby.h:33:0,
from ./nokogiri.h:33,
from ./xslt_stylesheet.h:4,
from xslt_stylesheet.c:1:
/root/ruby-2.3.3/include/ruby-2.3.0/ruby/ruby.h:1397:1: note: expected 'VALUE' but argument is of type 'void *'
rb_data_object_get(VALUE obj)
^
compiling xml_attribute_decl.c
compiling xml_namespace.c
xml_namespace.c: In function 'dealloc_namespace':
xml_namespace.c:17:13: warning: cast discards '__attribute__((const))' qualifier from pointer target type [-Wcast-qual]
xmlFree((xmlChar *)ns->href);
^
xml_namespace.c:20:13: warning: cast discards '__attribute__((const))' qualifier from pointer target type [-Wcast-qual]
xmlFree((xmlChar *)ns->prefix);
^
xml_namespace.c: In function 'part_of_an_xpath_node_set_eh':
xml_namespace.c:67:3: warning: passing argument 1 of 'Nokogiri_namespace_eh' from incompatible pointer type [enabled by default]
return (node->next && ! Nokogiri_namespace_eh(node->next));
^
xml_namespace.c:27:5: note: expected 'xmlNodePtr' but argument is of type 'struct _xmlNs *'
int Nokogiri_namespace_eh(xmlNodePtr node)
^
compiling xml_dtd.c
compiling xml_processing_instruction.c
compiling html_sax_parser_context.c
compiling html_sax_push_parser.c
compiling xml_encoding_handler.c
compiling xml_xpath_context.c
compiling html_entity_lookup.c
compiling xml_document.c
xml_document.c: In function 'set_encoding':
xml_document.c:182:12: warning: cast discards '__attribute__((const))' qualifier from pointer target type [-Wcast-qual]
free((char *) doc->encoding); /* this may produce a gcc cast warning */
^
xml_document.c: In function 'canonicalize':
xml_document.c:535:15: warning: cast discards '__attribute__((const))' qualifier from pointer target type [-Wcast-qual]
ns[i] = (xmlChar*) ptr;
^
compiling xml_schema.c
compiling xml_cdata.c
compiling xml_entity_reference.c
compiling html_document.c
linking shared-object nokogiri/nokogiri.so
Cleaning files only used during build.
rm -rf /root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri/tmp/x86_64-pc-linux-gnu/ports
rm -rf /root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ports
current directory: /root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ext/nokogiri
make "DESTDIR=" install
/usr/bin/install -c -m 0755 nokogiri.so ./.gem.20170216-7781-1rmk8v8/nokogiri
To see why this extension failed to compile, please check the mkmf.log which can be found here:
/root/ruby-2.3.3/lib/ruby/gems/2.3.0/extensions/x86_64-linux/2.3.0-static/nokogiri-1.7.0.1/mkmf.log
/root/ruby-2.3.3/bin/nokogiri
Successfully installed nokogiri-1.7.0.1
Parsing documentation for nokogiri-1.7.0.1
Parsing sources...
0% [ 1/179] CHANGELOG.md
1% [ 2/179] CONTRIBUTING.md
1% [ 3/179] C_CODING_STYLE.rdoc
2% [ 4/179] LICENSE.txt
2% [ 5/179] Manifest.txt
3% [ 6/179] README.md
3% [ 7/179] ROADMAP.md
4% [ 8/179] STANDARD_RESPONSES.md
5% [ 9/179] Y_U_NO_GEMSPEC.md
5% [10/179] ext/nokogiri/Makefile
6% [11/179] ext/nokogiri/depend
6% [12/179] ext/nokogiri/extconf.rb
7% [13/179] ext/nokogiri/html_document.c
7% [14/179] ext/nokogiri/html_document.h
8% [15/179] ext/nokogiri/html_document.o
8% [16/179] ext/nokogiri/html_element_description.c
9% [17/179] ext/nokogiri/html_element_description.h
10% [18/179] ext/nokogiri/html_element_description.o
10% [19/179] ext/nokogiri/html_entity_lookup.c
11% [20/179] ext/nokogiri/html_entity_lookup.h
11% [21/179] ext/nokogiri/html_entity_lookup.o
12% [22/179] ext/nokogiri/html_sax_parser_context.c
12% [23/179] ext/nokogiri/html_sax_parser_context.h
13% [24/179] ext/nokogiri/html_sax_parser_context.o
13% [25/179] ext/nokogiri/html_sax_push_parser.c
14% [26/179] ext/nokogiri/html_sax_push_parser.h
15% [27/179] ext/nokogiri/html_sax_push_parser.o
15% [28/179] ext/nokogiri/nokogiri.c
16% [29/179] ext/nokogiri/nokogiri.h
16% [30/179] ext/nokogiri/nokogiri.o
17% [31/179] ext/nokogiri/nokogiri.so
17% [32/179] ext/nokogiri/xml_attr.c
18% [33/179] ext/nokogiri/xml_attr.h
18% [34/179] ext/nokogiri/xml_attr.o
19% [35/179] ext/nokogiri/xml_attribute_decl.c
20% [36/179] ext/nokogiri/xml_attribute_decl.h
20% [37/179] ext/nokogiri/xml_attribute_decl.o
21% [38/179] ext/nokogiri/xml_cdata.c
21% [39/179] ext/nokogiri/xml_cdata.h
22% [40/179] ext/nokogiri/xml_cdata.o
22% [41/179] ext/nokogiri/xml_comment.c
23% [42/179] ext/nokogiri/xml_comment.h
24% [43/179] ext/nokogiri/xml_comment.o
24% [44/179] ext/nokogiri/xml_document.c
25% [45/179] ext/nokogiri/xml_document.h
25% [46/179] ext/nokogiri/xml_document.o
26% [47/179] ext/nokogiri/xml_document_fragment.c
26% [48/179] ext/nokogiri/xml_document_fragment.h
27% [49/179] ext/nokogiri/xml_document_fragment.o
27% [50/179] ext/nokogiri/xml_dtd.c
28% [51/179] ext/nokogiri/xml_dtd.h
29% [52/179] ext/nokogiri/xml_dtd.o
29% [53/179] ext/nokogiri/xml_element_content.c
30% [54/179] ext/nokogiri/xml_element_content.h
30% [55/179] ext/nokogiri/xml_element_content.o
31% [56/179] ext/nokogiri/xml_element_decl.c
31% [57/179] ext/nokogiri/xml_element_decl.h
32% [58/179] ext/nokogiri/xml_element_decl.o
32% [59/179] ext/nokogiri/xml_encoding_handler.c
33% [60/179] ext/nokogiri/xml_encoding_handler.h
34% [61/179] ext/nokogiri/xml_encoding_handler.o
34% [62/179] ext/nokogiri/xml_entity_decl.c
35% [63/179] ext/nokogiri/xml_entity_decl.h
35% [64/179] ext/nokogiri/xml_entity_decl.o
36% [65/179] ext/nokogiri/xml_entity_reference.c
36% [66/179] ext/nokogiri/xml_entity_reference.h
37% [67/179] ext/nokogiri/xml_entity_reference.o
37% [68/179] ext/nokogiri/xml_io.c
38% [69/179] ext/nokogiri/xml_io.h
39% [70/179] ext/nokogiri/xml_io.o
39% [71/179] ext/nokogiri/xml_libxml2_hacks.c
40% [72/179] ext/nokogiri/xml_libxml2_hacks.h
40% [73/179] ext/nokogiri/xml_libxml2_hacks.o
41% [74/179] ext/nokogiri/xml_namespace.c
41% [75/179] ext/nokogiri/xml_namespace.h
42% [76/179] ext/nokogiri/xml_namespace.o
43% [77/179] ext/nokogiri/xml_node.c
43% [78/179] ext/nokogiri/xml_node.h
44% [79/179] ext/nokogiri/xml_node.o
44% [80/179] ext/nokogiri/xml_node_set.c
45% [81/179] ext/nokogiri/xml_node_set.h
45% [82/179] ext/nokogiri/xml_node_set.o
46% [83/179] ext/nokogiri/xml_processing_instruction.c
46% [84/179] ext/nokogiri/xml_processing_instruction.h
47% [85/179] ext/nokogiri/xml_processing_instruction.o
48% [86/179] ext/nokogiri/xml_reader.c
48% [87/179] ext/nokogiri/xml_reader.h
49% [88/179] ext/nokogiri/xml_reader.o
49% [89/179] ext/nokogiri/xml_relax_ng.c
50% [90/179] ext/nokogiri/xml_relax_ng.h
50% [91/179] ext/nokogiri/xml_relax_ng.o
51% [92/179] ext/nokogiri/xml_sax_parser.c
51% [93/179] ext/nokogiri/xml_sax_parser.h
52% [94/179] ext/nokogiri/xml_sax_parser.o
53% [95/179] ext/nokogiri/xml_sax_parser_context.c
53% [96/179] ext/nokogiri/xml_sax_parser_context.h
54% [97/179] ext/nokogiri/xml_sax_parser_context.o
54% [98/179] ext/nokogiri/xml_sax_push_parser.c
55% [99/179] ext/nokogiri/xml_sax_push_parser.h
55% [100/179] ext/nokogiri/xml_sax_push_parser.o
56% [101/179] ext/nokogiri/xml_schema.c
56% [102/179] ext/nokogiri/xml_schema.h
57% [103/179] ext/nokogiri/xml_schema.o
58% [104/179] ext/nokogiri/xml_syntax_error.c
58% [105/179] ext/nokogiri/xml_syntax_error.h
59% [106/179] ext/nokogiri/xml_syntax_error.o
59% [107/179] ext/nokogiri/xml_text.c
60% [108/179] ext/nokogiri/xml_text.h
60% [109/179] ext/nokogiri/xml_text.o
61% [110/179] ext/nokogiri/xml_xpath_context.c
62% [111/179] ext/nokogiri/xml_xpath_context.h
62% [112/179] ext/nokogiri/xml_xpath_context.o
63% [113/179] ext/nokogiri/xslt_stylesheet.c
63% [114/179] ext/nokogiri/xslt_stylesheet.h
64% [115/179] ext/nokogiri/xslt_stylesheet.o
64% [116/179] lib/nokogiri.rb
65% [117/179] lib/nokogiri/css.rb
65% [118/179] lib/nokogiri/css/node.rb
66% [119/179] lib/nokogiri/css/parser.rb
67% [120/179] lib/nokogiri/css/parser.y
67% [121/179] lib/nokogiri/css/parser_extras.rb
68% [122/179] lib/nokogiri/css/syntax_error.rb
68% [123/179] lib/nokogiri/css/tokenizer.rb
69% [124/179] lib/nokogiri/css/tokenizer.rex
69% [125/179] lib/nokogiri/css/xpath_visitor.rb
70% [126/179] lib/nokogiri/decorators/slop.rb
70% [127/179] lib/nokogiri/html.rb
71% [128/179] lib/nokogiri/html/builder.rb
72% [129/179] lib/nokogiri/html/document.rb
72% [130/179] lib/nokogiri/html/document_fragment.rb
73% [131/179] lib/nokogiri/html/element_description.rb
73% [132/179] lib/nokogiri/html/element_description_defaults.rb
74% [133/179] lib/nokogiri/html/entity_lookup.rb
74% [134/179] lib/nokogiri/html/sax/parser.rb
75% [135/179] lib/nokogiri/html/sax/parser_context.rb
75% [136/179] lib/nokogiri/html/sax/push_parser.rb
76% [137/179] lib/nokogiri/nokogiri.so
77% [138/179] lib/nokogiri/syntax_error.rb
77% [139/179] lib/nokogiri/version.rb
78% [140/179] lib/nokogiri/xml.rb
78% [141/179] lib/nokogiri/xml/attr.rb
79% [142/179] lib/nokogiri/xml/attribute_decl.rb
79% [143/179] lib/nokogiri/xml/builder.rb
80% [144/179] lib/nokogiri/xml/cdata.rb
81% [145/179] lib/nokogiri/xml/character_data.rb
81% [146/179] lib/nokogiri/xml/document.rb
82% [147/179] lib/nokogiri/xml/document_fragment.rb
82% [148/179] lib/nokogiri/xml/dtd.rb
83% [149/179] lib/nokogiri/xml/element_content.rb
83% [150/179] lib/nokogiri/xml/element_decl.rb
84% [151/179] lib/nokogiri/xml/entity_decl.rb
84% [152/179] lib/nokogiri/xml/namespace.rb
85% [153/179] lib/nokogiri/xml/node.rb
86% [154/179] lib/nokogiri/xml/node/save_options.rb
86% [155/179] lib/nokogiri/xml/node_set.rb
87% [156/179] lib/nokogiri/xml/notation.rb
87% [157/179] lib/nokogiri/xml/parse_options.rb
88% [158/179] lib/nokogiri/xml/pp.rb
88% [159/179] lib/nokogiri/xml/pp/character_data.rb
89% [160/179] lib/nokogiri/xml/pp/node.rb
89% [161/179] lib/nokogiri/xml/processing_instruction.rb
90% [162/179] lib/nokogiri/xml/reader.rb
91% [163/179] lib/nokogiri/xml/relax_ng.rb
91% [164/179] lib/nokogiri/xml/sax.rb
92% [165/179] lib/nokogiri/xml/sax/document.rb
92% [166/179] lib/nokogiri/xml/sax/parser.rb
93% [167/179] lib/nokogiri/xml/sax/parser_context.rb
93% [168/179] lib/nokogiri/xml/sax/push_parser.rb
94% [169/179] lib/nokogiri/xml/schema.rb
94% [170/179] lib/nokogiri/xml/searchable.rb
95% [171/179] lib/nokogiri/xml/syntax_error.rb
96% [172/179] lib/nokogiri/xml/text.rb
96% [173/179] lib/nokogiri/xml/xpath.rb
97% [174/179] lib/nokogiri/xml/xpath/syntax_error.rb
97% [175/179] lib/nokogiri/xml/xpath_context.rb
98% [176/179] lib/nokogiri/xslt.rb
98% [177/179] lib/nokogiri/xslt/stylesheet.rb
99% [178/179] lib/xsd/xmlparser/nokogiri.rb
100% [179/179] suppressions/README.txt
Installing ri documentation for nokogiri-1.7.0.1
Done installing documentation for nokogiri after 9 seconds
1 gem installed
# nokogiri -v
# Nokogiri (1.7.0.1)
---
warnings: []
nokogiri: 1.7.0.1
ruby:
version: 2.3.3
platform: x86_64-linux
description: ruby 2.3.3p222 (2016-11-21 revision 56859) [x86_64-linux]
engine: ruby
libxml:
binding: extension
source: packaged
libxml2_path: "/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ports/x86_64-pc-linux-gnu/libxml2/2.9.4"
libxslt_path: "/root/ruby-2.3.3/lib/ruby/gems/2.3.0/gems/nokogiri-1.7.0.1/ports/x86_64-pc-linux-gnu/libxslt/1.1.29"
libxml2_patches: []
libxslt_patches: []
compiled: 2.9.4
loaded: 2.9.4
Not sure why I can't reproduce @mbixby17451's results here ... going to try again from scratch to see if any additional zypper packages I may have installed made a difference.
OK, I've confimed that when site-config
is installed on OpenSuse 42.1, Nokogiri fails to install. And when it is not installed, Nokogiri installs fine.
Hi, @flavorjones ... I don't understand why you've closed this.
The site-config
file is an intended part of autoconf
which lets you specify aspects of a given OS layout according to how the distro prefers to lay them out. It properly sets the right variable, which is then intended for use by other build tools to understand where to find includes, libraries, etc. This is being used properly in OpenSUSE.
@mbixby17451 noted the source of the issue, which is in ext/nokogiri/extconf.rb
which assumes a hard-coded 'lib' path rather than seeking to use the proper variable from autoconf (probably because it's hard to fetch that variable without being in a shell). He offered PR #1574 which you also closed, noting that you might reopen it once you understood the problem more clearly.
Can you say more on why you chose to close this without further comment beyond understanding how it was broken? I'm hoping to stop using this workaround every time I install nokogiri on a 64-bit OpenSUSE system.
And, as always, thanks to you and Team Nokogiri. If I didn't use it as much, this wouldn't be as painful to endure.
@purp I closed it because it's fixed -- see commit 988856b75caa19b08e3bbb01c5aa08930da9372b
If this is still not working for you, let's dig in!
Ahhhhh. Sorry, I'm clearly dumbing today in a "No Dumbing" area. Completely overlooked that it was closed with a commit.
Thanks for the fix, and sorry for the noise!
What is happening is that libxml2.a and libxslt.a get built beneath "lib64" subdirectories per the openSUSE standard, but then when the nokogiri code attempts to link to those libraries, it looks for them in a "lib" subdirectory instead of "lib64".
So it seems that there may be a hardcoded "lib" subdirectory path somewhere or else the various config/build tools aren't properly agreeing on the correct path.
This version of the nokogiri gem installs correctly on CentOS (where "lib" is the standard).
I've seen similar issues posted here, but often the OP falls back to "--use-system-libraries" or else fails to respond with additional requested details and then the issue gets closed. This is a priority problem for me and I don't like the system libraries workaround.
Let me know if you require further diagnostic information. I rely on "It Just Works" and so I don't have familiarity with pkgconfig and friends, so if you need me to make tweaks there, please give detailed instructions. Thanks.
The failure logs below come from a cleanly installed openSUSE Leap 42.2 virtual machine.
What is the output of
gem install
?What are the contents of the
mkmf.log
file?What operating system are you using?
openSUSE Leap 42.2 x86_64 (as well as openSUSE 12.3 x86_64) with ruby 2.3.1