programing

gem install: gem 네이티브 확장을 빌드하지 못했습니다(헤더 파일을 찾을 수 없습니다).

goodcopy 2022. 12. 26. 21:35
반응형

gem install: gem 네이티브 확장을 빌드하지 못했습니다(헤더 파일을 찾을 수 없습니다).

Fedora 14를 사용하고 있으며 MySQL 및 MySQL 서버 5.1.42를 설치하여 실행하고 있습니다.root 사용자로 이 작업을 수행하려고 했습니다.

gem install mysql

하지만 다음 오류가 발생합니다.

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

/usr/bin/ruby extconf.rb
mkmf.rb can't find header files for ruby at /usr/lib/ruby/ruby.h


Gem files will remain installed in /usr/lib/ruby/gems/1.8/gems/mysql-2.8.1 for inspection.
Results logged to /usr/lib/ruby/gems/1.8/gems/mysql-2.8.1/ext/mysql_api/gem_make.out

여기 무슨 일 있어?설치된 루비 1.8.7과 최신 루비젬 1.3.7이 있습니다.

수용된 답변에 혼란스러울 수 있는 분들을 위해 저처럼 루비 헤더를 설치하셔야 합니다.

나를 구해준 기사가 여기 있다.

다음은 수정된 솔루션입니다(Fedora 13을 사용하고 있습니다).

yum -y install gcc mysql-devel ruby-devel rubygems
gem install -y mysql -- --with-mysql-config=/usr/bin/mysql_config

Debian 및 Debian 스타일 패키지를 사용하는 다른 배포판의 경우 루비 개발 헤더는 다음과 같이 설치됩니다.

sudo apt-get install ruby-dev

Ubuntu의 경우 루비 개발 헤더는 다음과 같이 설치됩니다.

sudo apt-get install ruby-all-dev

이전 버전의 루비(예: 2.2)를 사용하는 경우 다음을 실행해야 합니다.

sudo apt-get install ruby2.2-dev

(여기서 2.2는 원하는 Ruby 버전입니다.)

레드햇, 페도라:

yum -y install gcc mysql-devel ruby-devel rubygems
gem install -y mysql -- --with-mysql-config=/usr/bin/mysql_config

Debian, Ubuntu:

apt-get install libmysqlclient-dev ruby-dev
gem install mysql

Arch Linux:

pacman -S libmariadbclient
gem install mysql

2015년에 이 패키지를 설치하신 분들을 위해ruby2.0일치하는 것을 인스톨 할 필요가 있습니다.ruby2.0-dev적절한 Ruby 헤더를 가져옵니다.에 대해서도 마찬가지다.ruby2.1그리고.ruby2.2, 등. 예를 들어 다음과 같습니다.

$ sudo apt-get install ruby2.2-dev

아무래도...

yum install ruby-devel

제가 할 수 있는 건

gem install datamapper

나중에.

다른 패키지를 설치해야 할 수 있습니다.

yum install gcc gcc-c++

(원래의) 증축을 할 수 있다

xcode 툴이 올바르게 인스톨 되어 있지 않으면, MAC 유저가 이 문제에 직면할 가능성이 있습니다.이 문제를 해결하기 위한 명령어는 다음과 같습니다.

xcode-select --install

여기서 해결책을 찾았어요.

# yum install mysql-devel gcc make
# gem install mysql -- --with-mysql-config=/usr/bin/mysql_config

이 글은 나에게 도움이 되었다.정말 감사해요.

Linux(Ubuntu 12.10)에서는

sudo apt-get install ruby
sudo apt-get install rubygems
sudo apt-get install ruby-dev

달리기에 성공하기 전에

sudo gem install jekyll

gem과 ruby가 설치되어 있고 레일을 설치할 수 없는 경우 ruby dev lib를 설치합니다.

sudo apt-get install ruby-dev

저는 좋아요.나는 다른 해결책을 시도했다.

레드햇, 페도라:

sudo dnf -y install gcc-c++ redhat-rpm-config ruby-devel gcc mysql-devel rubygems

(Ubuntu 16.04를 사용하고 있는) 저처럼 아직 문제가 있는 분들을 위해 bcrypt, pg 등의 보석을 설치하기 위해 다음 명령어를 넣어야 했습니다.하나 빼고는 모두 위와 비슷합니다.

sudo apt-get install ruby-dev -y
sudo apt-get install libpq-dev -y
sudo apt-get install libmysqlclient-dev
sudo apt-get install build-essential patch -y

이를 통해 PG, bcrypt, recalcha 등의 보석을 설치할 수 있었습니다.

저의 초기 해결책은 위의 오류를 해결하는 것이었습니다.ruby-devel,patch그리고.rubygems.

문제는 bcrypt 3.1.11이 Fedora 23에 컴파일 및 설치에 아직 문제가 있었기 때문에 조금 달랐습니다.나는 추가 패키지가 필요했다.따라서 위의 설치 후에도 여전히 문제가 발생했습니다.

gcc: error: conftest.c: No such file or directory

gcc: error: /usr/lib/rpm/redhat/redhat-hardened-cc1: No such file or directory

여기서부터 나는 다음을 해야 했다.

  • 툴이했습니다.sudo dnf group install "C Development Tools and Libraries"

  • 뛰었습니다.sudo dnf install redhat-rpm-configgcc를 사용하다

Fedore Project에 관한 글은 이쪽에서 찾을 수 있습니다.다른 니즈에 대한 해답을 찾을 수도 있습니다.

sudo apt-get install ruby-dev

이 명령을 통해 문제가 해결되었습니다!

다음 패키지를 설치해야 합니다.

  • 루비 개발

  • gcc

  • libffi-dev

  • 만들다

다음은 debian distro 명령어입니다.

 sudo apt install gcc ruby-dev rubygems libgmp-dev libgmp3-dev make 

openSUSE의 경우:

zypper in ruby-devel

나에게 효과가 있다:)

redhat-rpm-config를 설치해야 합니다.그게 너의 문제를 해결해 줄 것 같아!

이 방법은 효과가 있었습니다.

yum -y install gcc mysql-devel ruby-devel rubygems

RVM을 잘못 사용했을 수 있습니다.

다음 작업을 수행합니다.

\curl -sSL https://get.rvm.io | bash -s stable --rails

PATHPATHh 파일에 .
예를 들어 다음과 같습니다.

내보내기 PATH=$PATH:/usr/src/ruby-xxxxxxxxxxxxxxxxx

언급URL : https://stackoverflow.com/questions/4304438/gem-install-failed-to-build-gem-native-extension-cant-find-header-files

반응형