Skip to content
gem to install the libyajl2 c-library for distributions which do not have it
Ruby Shell
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github
ext/libyajl2
lib
spec
.gitignore
.gitmodules
.reek.yml
.rspec
.travis.yml
CHANGELOG.md
CODE_OF_CONDUCT.md
CONTRIBUTING.md
Gemfile
LICENSE
README.md
Rakefile
bootstrap.sh
kitchen.yml
libyajl2.gemspec

README.md

libyajl2-gem

Build Status Code Climate Gem Version

Umbrella Project: Chef Foundation

Project State: Active

Issues Response Time Maximum: 14 days

Pull Request Response Time Maximum: 14 days

gem to install the libyajl2 c-library for distributions which do not have it

NOTE

To build this depends on libgmp and its headers being installed. On Ubuntu:

apt-get install libgmp-dev

If you get a mysterious "unhandled exception" build failure like:

Building native extensions.  This could take a while...
ERROR:  Error installing libyajl2:
  ERROR: Failed to build gem native extension.

      /home/lamont/.rvm/rubies/ruby-2.2.3/bin/ruby -r ./siteconf20151209-53133-1aq7vdk.rb extconf.rb
      creating Makefile
      /home/lamont/.rvm/gems/ruby-2.2.3/gems/libyajl2-1.2.0/ext/libyajl2
      extconf.rb:104:in `makemakefiles': unhandled exception
        from extconf.rb:138:in `<main>'

        extconf failed, exit code 1

        Gem files will remain installed in /home/lamont/.rvm/gems/ruby-2.2.3/gems/libyajl2-1.2.0 for inspection.
        Results logged to /home/lamont/.rvm/gems/ruby-2.2.3/extensions/x86_64-linux/2.2.0/libyajl2-1.2.0/gem_make.out

Look at the output of make.out in the same directory as extconf.rb, for my example above that looks like:

# cat /home/lamont/.rvm/gems/ruby-2.2.3/gems/libyajl2-1.2.0/ext/libyajl2/make.out
compiling yajl_buf.c
compiling yajl.c
compiling yajl_gen.c
compiling yajl_tree.c
compiling yajl_encode.c
compiling yajl_parser.c
compiling yajl_alloc.c
compiling yajl_version.c
compiling yajl_lex.c
linking shared-object libyajl.so
/usr/bin/ld: cannot find -lgmp
collect2: error: ld returned 1 exit status
make: *** [libyajl.so] Error 1

Which gives the correct error that -lgmp was not found...

You can’t perform that action at this time.