Bug 1023404

Summary: REQ: Install icu and/or libicu-devel - related to ruby Gem charlock_holmes
Product: OpenShift Online Reporter: Paolo Antinori <pantinor>
Component: ContainersAssignee: Hiro Asari <hasari>
Status: CLOSED UPSTREAM QA Contact: libra bugs <libra-bugs>
Severity: low Docs Contact:
Priority: unspecified    
Version: 2.xCC: jkeck
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-10-25 15:45:22 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Attachments:
Description Flags
Gemfile.lock none

Description Paolo Antinori 2013-10-25 11:10:18 UTC
Created attachment 816093 [details]
Gemfile.lock

Description of problem: Unable to build charlock_holmes Ruby Gem


Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1. Create a Gemfile that requires charlock_holmes
2. invoke "bundle" command

Actual results:

Installing charlock_holmes (0.6.9.4) with native extensions ..........

Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.

        /opt/rh/ruby193/root/usr/bin/ruby extconf.rb 
checking for main() in -licui18n... no
which: no brew in (/var/lib/openshift/525935a24382ec3df8000204/.gem/bin:/opt/rh/ruby193/root/usr/bin:/var/lib/openshift/525935a24382ec3df8000204/.gem/bin:/opt/rh/ruby193/root/usr/bin::/bin:/usr/bin:/usr/sbin)
checking for main() in -licui18n... no


***************************************************************************************
*********** icu required (brew install icu4c or apt-get install libicu-dev) ***********
***************************************************************************************
*** 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}/
    --with-make-prog
    --without-make-prog
    --srcdir=.
    --curdir
    --ruby=/opt/rh/ruby193/root/usr/bin/ruby
    --with-icu-dir
    --without-icu-dir
    --with-icu-include
    --without-icu-include=${icu-dir}/include
    --with-icu-lib
    --without-icu-lib=${icu-dir}/
    --with-icui18nlib
    --without-icui18nlib
    --with-icui18nlib
    --without-icui18nlib


Gem files will remain installed in /var/lib/openshift/525935a24382ec3df8000204/app-root/runtime/repo/vendor/bundle/ruby/1.9.1/gems/charlock_holmes-0.6.9.4 for inspection.
Results logged to /var/lib/openshift/525935a24382ec3df8000204/app-root/runtime/repo/vendor/bundle/ruby/1.9.1/gems/charlock_holmes-0.6.9.4/ext/charlock_holmes/gem_make.out



Expected results:

No errors


Additional info:

Sample Gemfile

~~~
source 'http://rubygems.org'

gem 'gollum'
gem 'asciidoctor'
gem 'asciidoc'
~~~

Sample Gemfile.lock

~~~
GEM
  remote: http://rubygems.org/
  specs:
    asciidoc (0.0.2)
    asciidoctor (0.1.4)
    charlock_holmes (0.6.9.4)
    diff-lcs (1.2.4)
    github-markdown (0.5.5)
    github-markup (0.7.5)
    gitlab-grit (2.6.0)
      charlock_holmes (~> 0.6.9)
      diff-lcs (~> 1.1)
      mime-types (~> 1.15)
      posix-spawn (~> 0.3.6)
    gollum (2.5.1)
      github-markdown (~> 0.5.5)
      gollum-lib (~> 1.0.8)
      mustache (>= 0.99.4, < 1.0.0)
      sinatra (~> 1.4.3)
      useragent (~> 0.8.2)
    gollum-lib (1.0.8)
      github-markup (>= 0.7.5, < 1.0.0)
      gitlab-grit (~> 2.6.0)
      nokogiri (~> 1.6.0)
      pygments.rb (~> 0.5.2)
      sanitize (~> 2.0.6)
      stringex (~> 2.1.0)
    mime-types (1.25)
    mini_portile (0.5.2)
    mustache (0.99.4)
    nokogiri (1.6.0)
      mini_portile (~> 0.5.0)
    posix-spawn (0.3.6)
    pygments.rb (0.5.2)
      posix-spawn (~> 0.3.6)
      yajl-ruby (~> 1.1.0)
    rack (1.5.2)
    rack-protection (1.5.1)
      rack
    sanitize (2.0.6)
      nokogiri (>= 1.4.4)
    sinatra (1.4.4)
      rack (~> 1.4)
      rack-protection (~> 1.4)
      tilt (~> 1.3, >= 1.3.4)
    stringex (2.1.0)
    tilt (1.4.1)
    useragent (0.8.3)
    yajl-ruby (1.1.0)

PLATFORMS
  ruby

DEPENDENCIES
  asciidoc
  asciidoctor
  gollum

~~~

Comment 1 Hiro Asari 2013-10-25 15:45:22 UTC
For this, we need 'libicu-devel' package installed on each node that this application is going to run. This needs to be done on the image level.

I suggest adding your idea to https://www.openshift.com/ideas and go through the process to get this library added.

In the meantime, I'm closing this.