Project

General

Profile

Bug #13060

Updated by nobu (Nobuyoshi Nakada) over 3 years ago

When compiling the nokogiri gem, you can opt to use system libraries which uses `pkg_config`. When I add '-Wconversion' to $CFLAGS, it causes 'pkg_config('libxml-2.0')' to return nil. This is not the case in Ruby 2.3.3. 

 This will affect anyone using nokogiri with Ruby 2.4.0 on Heroku. 

 test script: 

 
 ~~~ ruby 
 require 'mkmf' 

 puts RUBY_DESCRIPTION 
 puts "pkg_config('libxml-2.0'): #{pkg_config('libxml-2.0').inspect}" 
 puts "Adding -Wconversion to $CFLAGS" 
 $CFLAGS << " -Wconversion" 
 puts "pkg_config('libxml-2.0'): #{pkg_config('libxml-2.0').inspect}" 
 ~~~ 

 ruby 2.3.3 output: 

 
 ~~~ 
 ruby 2.3.3p222 (2016-11-21 revision 56859) [x86_64-linux] 
 pkg_config('libxml-2.0'): ["", "", "-lxml2"] 
 Adding -Wconversion to $CFLAGS 
 pkg_config('libxml-2.0'): ["", "", "-lxml2"] 
 ~~~ 

 ruby 2.4.0-rc1 output: 

 
 ~~~ 
 ruby 2.4.0rc1 (2016-12-12 trunk 57064) [x86_64-linux] 
 pkg_config('libxml-2.0'): ["", "", "-lxml2"] 
 Adding -Wconversion to $CFLAGS 
 pkg_config('libxml-2.0'): nil 
 ~~~

Back