그냥 엘 카피 탄을 설치하고 보석을 설치할 수 없습니다 eventmachine
1.0.7
. openssl
에 1.0.2a-1
있습니다. 사용하려고 --with-ssl-dir
했지만 무시 된 것 같습니다.
그것들을 github 저장소에 보고했습니다 .
모든 제안은 정말 감사합니다. 감사.
$ ls /usr/local/Cellar/openssl/1.0.2a-1/include/openssl/ssl.h
/usr/local/Cellar/openssl/1.0.2a-1/include/openssl/ssl.h
$ gem install eventmachine -v '1.0.7' -- --with-ssl-dir=/usr/local/Cellar/openssl/1.0.2a-1/include
/Users/pain/.rbenv/versions/2.1.2/bin/ruby -r ./siteconf20150612-56154-1hsjz2n.rb extconf.rb --with-ssl-dir=/usr/local/Cellar/openssl/1.0.2a-1/include
checking for rb_trap_immediate in ruby.h,rubysig.h... no
checking for rb_thread_blocking_region()... yes
checking for ruby/thread.h... yes
checking for rb_thread_call_without_gvl() in ruby/thread.h... 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 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 sys/event.h... yes
checking for sys/queue... yes
checking for clock_gettime()... no
checking for gethrtime()... no
creating Makefile
make "DESTDIR=" clean
make "DESTDIR="
compiling binder.cpp
In file included from binder.cpp:20:
./project.h:116: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 install eventmachine -- --with-cppflags=-I/usr/local/opt/openssl/include
Building native extensions with: '--with-cppflags=-I/usr/local/opt/openssl/include'
This could take a while...
Successfully installed eventmachine-1.0.8
1 gem installed
이와 같이 번 들러를 설정할 수도 있지만 피상적이라고 생각합니다.
bundle config build.eventmachine --with-cppflags=-I/usr/local/opt/openssl/include
답변
번 들러 및 홈 브루를 사용하는 경우 :
$ bundle config build.eventmachine --with-cppflags=-I$(brew --prefix openssl)/include
$ bundle install
답변
brew link --force openssl
그때:
gem install eventmachine
또한 수정합니다 :
- 보석 설치 탁
- 번들 설치
- 갈퀴 및 난간 작업
추신 : 아마 당신은 제거하고 brew install openssl
다시 실행 해야합니다
Apple이 OSX에서 openssl을 제거했기 때문에 문제가 발생했습니다 (El Captain 빌드).
답변
gem pristine eventmachine -- --with-cppflags=-I/usr/local/opt/openssl/include
pristine은 오래된 gem을 제거하고 다시 컴파일합니다.
cpp flags 옵션은 컴파일러가 openssl 헤더를 찾을 수 있도록합니다.
원하는 경우 버전을 추가 할 수도 있습니다.
gem pristine eventmachine -v '1.0.4' -- --with-cppflags=-I/usr/local/opt/openssl/include
답변
EventMachine을 다른 gem의 종속성으로 설치하는 경우 gem을 수동으로 설치할 때 올바른 버전을 지정해야합니다.
gem install eventmachine -v 1.0.5 -- --with-cppflags=-I$(brew --prefix openssl)/include
그런 다음 원래 설치하려는 gem을 설치할 수 있습니다.
gem install mailcatcher
답변
v 1.0.3을 설치하려고했는데 이것이 효과가있었습니다.
gem install eventmachine -v '1.0.3' -- --with-cppflags=-I/usr/local/opt/openssl/include
이 토론은 매우 도움이되었습니다. https://github.com/eventmachine/eventmachine/issues/602
답변
한 가지 대안은 다음과 같이 전체 사용자 프로파일에 대한 번 들러 구성 항목을 추가하는 것입니다.
cd ~
bundle config build.eventmachine --with-cppflags=-I$(brew --prefix openssl)/include
홈 디렉토리에 .bundle / config 파일이 생성되어 실행시 모든 프로젝트에서 사용됩니다 bundle install
.
