1

I am trying to install Jekyll on my Mac (gem install jekyll) using RubyGems but I'm running into the error below.

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

    current directory: /Users/nikhilanand/.rvm/gems/ruby-3.0.2/gems/eventmachine-1.2.7/ext
/Users/nikhilanand/.rvm/rubies/ruby-3.0.2/bin/ruby -I /Users/nikhilanand/.rvm/rubies/ruby-3.0.2/lib/ruby/3.0.0 -r ./siteconf20210816-54247-5zijii.rb extconf.rb
checking for -lcrypto... yes
checking for -lssl... yes
checking for openssl/ssl.h... yes
checking for openssl/err.h... yes
checking for rb_trap_immediate in ruby.h,rubysig.h... no
checking for rb_thread_blocking_region()... no
checking for rb_thread_call_without_gvl() in ruby/thread.h... yes
checking for rb_thread_fd_select()... yes
checking for rb_fdset_t in ruby/intern.h... yes
checking for rb_wait_for_single_fd()... yes
checking for rb_enable_interrupt()... no
checking for rb_time_new()... yes
checking for inotify_init() in sys/inotify.h... no
checking for __NR_inotify_init in sys/syscall.h... no
checking for writev() in sys/uio.h... yes
checking for pipe2() in unistd.h... no
checking for accept4() in sys/socket.h... no
checking for SOCK_CLOEXEC in sys/socket.h... no
checking for sys/event.h... yes
checking for sys/queue.h... yes
checking for clock_gettime()... yes
checking for CLOCK_MONOTONIC_RAW in time.h... yes
checking for CLOCK_MONOTONIC in time.h... yes
CXXFLAGS= -Wall -Wextra -Wno-deprecated-declarations -Wno-ignored-qualifiers -Wno-unused-result -Wno-address
creating Makefile

current directory: /Users/nikhilanand/.rvm/gems/ruby-3.0.2/gems/eventmachine-1.2.7/ext
make DESTDIR\= clean

current directory: /Users/nikhilanand/.rvm/gems/ruby-3.0.2/gems/eventmachine-1.2.7/ext
make DESTDIR\=
compiling binder.cpp
In file included from binder.cpp:20:
./project.h:119:10: fatal error: 'openssl/ssl.h' file not found
#include <openssl/ssl.h>
         ^~~~~~~~~~~~~~~
1 error generated.
make: *** [binder.o] Error 1

make failed, exit code 2

Gem files will remain installed in /Users/nikhilanand/.rvm/gems/ruby-3.0.2/gems/eventmachine-1.2.7 for inspection.
Results logged to /Users/nikhilanand/.rvm/gems/ruby-3.0.2/extensions/arm64-darwin-20/3.0.0/eventmachine-1.2.7/gem_make.out

I tried brew install openssl but it says that openssl is already installed, and I also tried gem install eventmachine -- --with-cppflags=-I/usr/local/opt/openssl/include but I'm getting the same error 'openssl/ssl.h' file not found.

Could someone point out how to fix this issue here?

Nikhil Anand
  • 111
  • 4

2 Answers2

6

You might need to run brew link --force openssl first.

Then gem install eventmachine -- --with-cppflags=-I/usr/local/opt/openssl/include

samwize
  • 25,675
  • 15
  • 141
  • 186
3

I had the same issue and this worked for me:

gem install eventmachine -v '1.2.7'  -- --with-cppflags=-I/usr/local/opt/openssl/include

I had to specify the version. Without it, it still failed

bruno-martins
  • 131
  • 1
  • 9