페이지젬을 설치하려고 할 때 'libpq-fe.h' 헤더를 찾을 수 없습니다.
Ruby on Rails 3.1 이전 버전을 사용하고 있습니다.는 Postgre를을 사용하는 것을 좋아합니다.는 SQL 입니다.pg
gem.과 같은오류를 : gem. 다음과 같은 오류가 발생합니다.
$ gem install pg
Building native extensions. This could take a while...
ERROR: Error installing pg:
ERROR: Failed to build gem native extension.
/home/u/.rvm/rubies/ruby-1.9.2-p0/bin/ruby extconf.rb
checking for pg_config... no
No pg_config... trying anyway. If building fails, please try again with
--with-pg-config=/path/to/pg_config
checking for libpq-fe.h... no
Can't find the 'libpq-fe.h header
*** 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}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/home/u/.rvm/rubies/ruby-1.9.2-p0/bin/ruby
--with-pg
--without-pg
--with-pg-dir
--without-pg-dir
--with-pg-include
--without-pg-include=${pg-dir}/include
--with-pg-lib
--without-pg-lib=${pg-dir}/lib
--with-pg-config
--without-pg-config
--with-pg_config
--without-pg_config
Gem files will remain installed in /home/u/.rvm/gems/ruby-1.9.2-p0/gems/pg-0.11.0 for inspection.
Results logged to /home/u/.rvm/gems/ruby-1.9.2-p0/gems/pg-0.11.0/ext/gem_make.out
이 문제를 어떻게 해결해야 합니까?
Ubuntu에서는 헤더가 패키지의 일부인 것처럼 보입니다(최소한 Ubuntu 버전에서는 11.04(Natty Narwhal), 10.04(Lucid Lynx), 11.10(Oneiric Ocelot), 12.04(Precise Pangolin), 14.04(Trusty Tahr) 및 18.04(Bionic Beaver):
...
/usr/include/postgresql/libpq-fe.h
...
설해보십오를 해 보세요.libpq-dev
OS에 하는 것으로 간주됩니다.
- Ubuntu/Debian 파일:
sudo apt-get install libpq-dev
- RHEL(Red Hat Linux) 시스템의 경우:
yum install postgresql-devel
- Mac 홈브루의 경우:
brew install postgresql
- MacMacPorts의 경우 PostgreSQL:
gem install pg -- --with-pg-config=/opt/local/lib/postgresql[version number]/bin/pg_config
- OpenSuse의 경우:
zypper in postgresql-devel
- ArchLinux의 경우:
pacman -S postgresql-libs
MacOS(이전의 Mac OS X 및 OS X)에서는 Homebrew를 사용하여 적절한 헤더를 설치합니다.
brew install postgresql
그리고 나서 달리기
gem install pg
작동해야 합니다.
를 postgresql
,넌 할 수 있다.brew install libpq
한 올른정내니다냅보를보바를 .PATH
그리고.PKG_CONFIG_PATH
와 같이, 'Caveats' 섹션명바와한같이설서에▁as같바.
나는 또한 하려고 노력했습니다.gem install libpq-dev
하지만 다음 오류가 발생했습니다.
Can't find the 'libpq-fe.h header
*** extconf.rb failed ***
나는 설때는할치하로 을 발견했습니다.sudo apt-get
Rails와 함) 작동했습니다즉, (Ruby on Rails와 함께 사용함).
sudo apt-get install libpq-dev
# or
apt-get install postgres-server-dev-{pg.version}
# for postgresql 9.4 on Ubuntu 14.04
그때 나는 할 수 있었습니다.
gem install pg
문제없이
다른 방법으로 해결할 수 있습니다.시스템에서 라이브러리를 찾지 못했습니다.그래서 저는 Postgre의 앱을 사용하여 설치했습니다.SQL 기본 웹 사이트.제 경우(OS X) 아래에서 파일을 찾았습니다./Library/PostgreSQL/9.1/include/
설치가 완료되면 표시됩니다. PostgrePostgre를 가지고 다른 .SQL이 설치되었습니다.
Gem 설치를 위한 추가 경로를 추가하는 방법에 대한 이 링크 덕분에 다음 명령으로 Gem을 lib로 가리킬 수 있었습니다.
export CONFIGURE_ARGS="with-pg-include=/Library/PostgreSQL/9.1/include/"
gem install pg
그 후에, 그것은 작동합니다, 왜냐하면 그것은 이제 어디서 없어진 도서관을 찾을 수 있는지를 알기 때문입니다.libpq-fe.h에 적합한 위치로 경로를 바꾸기만 하면 됩니다.
libpq-fe.h 헤더를 찾을 수 없습니다.
다음 명령을 실행하는 CentOS 7.0.1406에서 성공했습니다.
~ % psql --version # => psql (PostgreSQL) 9.4.1
yum install libpqxx-devel
gem install pg -- --with-pg-config=/usr/pgsql-9.4/bin/pg_config
또는 항상 설치하도록 번들러를 구성할 수 있습니다.pg
이러한 를 실행하는 데 필요한 )을 하여 다음과 같이 설정할 수 .
bundle config build.pg --with-pg-config=/usr/pgsql-9.4/bin/pg_config
CentOS 6.4의 경우
yum install postgresql-devel
gem install pg
잘 작동했습니다!
참고로.
PostgresApp이 설치된 OS X의 Ruby on Rails 4 애플리케이션(이 경우 0.17.1 버전 필요 - 일종의 오래된 프로젝트):
gem install pg -v '0.17.1' -- --with-pg-config=/Applications/Postgres.app/Contents/Versions/9.3/bin/pg_config
그것은 단지 누락의 문제일 뿐입니다.libpq-fe.h
: Ubuntu 서실만하됩니다면에기.sudo apt-get install libpq-dev
의 명령어는 " " 를 합니다.libpq-dev
그런다다실수있다니습할행시음▁execute를 할 수 .bundle install
번들 설치를 다시 시작합니다.
Mac OS X에서 다음과 같이 실행됩니다.
gem install pg -- --with-pg-config=***/path/to/pg_config***
***/path/to/pg_config***
pg_configpg_config의입니다.
나의 경우에는 그것은 패키지였습니다.postgresql-server-dev-8.4
(Ubuntu 11.04(Natty Narwhal), 64비트에 있습니다.)
Postgre를 설치하지 않은 MacOS의 경우SQL 서버:
brew install libpq
gem install pg -- --with-pg-config="/usr/local/Cellar/libpq/9.6.6/bin/pg_config"
Fedora 30에 대한 나의 솔루션:
sudo dnf install /usr/include/libpq-fe.h
을 사용하는 은 Postgres.app을 입니다.libpq
그 패키지와 함께 제공됩니다.예를 들어 9.4 릴리스(본 문서의 현재)에서는 다음과 같은 기능만 있으면 됩니다.
export CONFIGURE_ARGS="with-pg-include=/Applications/Postgres.app/Contents/Versions/9.4/include"
gem install pg
이것은 당신의 것을 유지할 것입니다.pg
은이 설치한 PostgrePostgre의 과 되어 .설치한 SQL입니다.이 경우 홈브루에서 무언가를 설치하는 것은 낭비입니다.
저는 아마존 리눅스에서도 같은 문제가 있었습니다.는 머리글인 머말리을수다니있습었을 수 .libpq-fe.h
하지만 어떻게든 작동하지 않았습니다.
시스템의 다른 사용자를 통해 설치된 패키지의 다른 버전에서 제공되었습니다.포스트그레SQL 9.2 및 PostgreSQL 9.3이 설치되었습니다.그러니, 당신의 Postgre를 확인하세요.라이브러리를 포함하기 전의 SQL 버전입니다.
저에게 마법의 명령 줄은 다음과 같습니다.
sudo yum install postgresql93 postgresql93-server postgresql93-libs postgresql93-contrib postgresql93-devel
출처: Postgre 설치를 위한 거의 바보 가이드.SQL 9.3, PostGIS 2.1 및 pgRouting with Yum
데비안 기반 배포판(Ubuntu 포함)에 대한 더 일반적인 답변은 다음과 같습니다.먼설합다를 합니다.apt-file
루트로 실행 중인 패키지:
apt-get install apt-file
이렇게 하면 파일이 포함된 패키지를 검색할 수 있습니다.그런 다음 다음 다음을 사용하여 데이터베이스를 업데이트합니다.
apt-file update
(일반 사용자로 실행할 수 있습니다.)그런 다음 다음을 사용하여 누락된 헤더를 찾습니다.
apt-file search libpq-fe.h
내 컴퓨터에서, 이것은 다음을 제공합니다.
libpq-dev: /usr/include/postgresql/libpq-fe.h
postgres-xc-server-dev: /usr/include/postgres-xc/server/gtm/libpq-fe.h
잘했어!
Ubuntu에 "libpq-dev"를 설치하여 이 문제를 제거합니다.
sudo apt-get install libpq-dev
32에서 페도라 32를 했습니다.libpq5-devel
구체적으로
공식 저장소에서 postgresql을 설치하면 문제가 해결되지 않는 버전이 여러 개 있기 때문에 어떤 버전이 필요한지 테스트하는 것이 중요합니다.
데비안 불스아이에서, 기존의 어떤 대답도 저에게 그 문제를 해결해주지 않았습니다.
나와 같은 구성을 가진 사람에게 도움이 되는 경우:
- Postgre 사용SQL의 적절한 저장소: https://wiki.postgresql.org/wiki/Apt
sudo apt-get update && sudo apt-get dist-upgrade
Postgre(Postgre))v13에서 v14로 )sudo apt-get install libpq-dev
gem install pg
또는bundle install
Mac OS에서도 동일한 문제가 있었지만 Postgre를 설치했습니다.터미널에서 다음을 사용하여 SQL Gem을 쉽게 생성할 수 있습니다.
ARCHFLAGS="-arch x86_64" gem install pg
(Postgre)를 했습니다.을 사용하여 사용brew install postgresql
.)
저는 이 답을 찾았고, 이틀 동안 조사한 결과, 이 답이 저에게 유일하게 도움이 되었습니다(Mac OS).
$ sudo su
$ env ARCHFLAGS="-arch x86_64" gem install pg
Building native extensions. This could take a while...
Successfully installed pg-0.11.0
1 gem installed
Installing ri documentation for pg-0.11.0...
Installing RDoc documentation for pg-0.11.0...
스택 오버플로 질문을 참조하십시오. 게시글을 찾을 수 없습니다.SQL 클라이언트 라이브러리(libpq)입니다.
최근에 Mac OS X v10.10(요세미티)으로 업그레이드하여 구축하는 데 어려움을 겪었습니다.pg
같은 보석
보고된 오류는 다음과 같습니다.
Using config values from /usr/local/bin/pg_config
checking for libpq-fe.h... *** extconf.rb failed ***
나의 해결책은gem uninstall pg
그리고 나서.bundle update pg
보석을 최신 것으로 대체합니다.나는 뛰었습니다brew update; brew upgrade
Yosemite 설치 후 이전에 설치한 최신 버전의 패키지를 가져옵니다.
Mac에서는 다음 코드를 사용하여 문제를 해결했습니다.
gem install pg -v '0.18.4' -- --with-pg-config=/Applications/Postgres.app/Contents/Versions/9.4/bin/pg_config
Postgresql 9.6에서 이 문제가 발생했습니다.다음을 수행하여 문제를 해결할 수 있었습니다.
brew upgrade postgresql@9.6
brew link postgresql@9.6 --force
gem install pg
나는 Mac에서 Postgres.app을 실행하고 있고, 나는 해야만 했습니다.
export PATH=$PATH:/Applications/Postgres.app/Contents/Versions/9.4/bin
처음에. 그다음에.
bundle install
저를 위해 일했습니다.
asdfsdf를 했습니다.me. -config에서 . 있는 명령을 .--with-pg-include
gem install pg -- --with-pg-include=/<path>/.asdf/installs/postgres/<version>/include
했습니다.OS에 설치했습니다.libpq-dev package
yum install postgresql-devel
을 실행하는 중gem install pg
"와 동일한 오류를 반환했습니다.No pg_config... trying anyway. If building fails, please try again with --with-pg-config=/path/to/pg_config
".
아래와 같이 gem을 설치하면 문제가 해결되었습니다.
gem install pg -- --with-pg-config=/usr/pgsql-x.x/bin/pg_config
Ubuntu 20.04에서 libpq5:amd64 버전 13.2-1.pgdg20.04+1을 이미 가지고 있었습니다.이제 apt 저장소에서 libpq-dev를 설치하려고 했을 때,
The following packages have unmet dependencies:
libpq-dev : Depends: libpq5 (= 12.6-0ubuntu0.20.04.1) but 13.2-1.pgdg20.04+1 is to be installed
나는 빚을 졌습니다.http://ftp.us.debian.org/debian/pool/main/p/postgresql-13/libpq-dev_13.2-1_amd64.deb
그리고 다음을 수행했습니다.
mkdir -p /tmp/libpq-dev
dpkg-deb -R libpq-dev_13.2-1_amd64.deb /tmp/libpq-dev
sed -i 's|= 13.2-1|= 13.2-1.pgdg20.04+1|' /tmp/libpq-dev/DEBIAN/control
dpkg-deb -b /tmp/libpq-dev /tmp/libpq-dev-new.deb
sudo dpkg -i /tmp/libpq-dev-new.deb
저는 그 이후로 보석을 행복하게 사용하고 있습니다.추가 설치나 기타 작업이 없습니다.
알파인의 경우 아래를 사용하여 오류를 수정하십시오.
apk add --no-cache postgresql-dev
MacOS Ventura에서 심볼 링크를 생성하여 해결했습니다.
postgresql이 이미 설치된 경우
brew link postgresql@12 --force
이 명령은 아래와 같이 디렉터리 경로를 제공합니다.
If you need to have this software first in your PATH instead consider running:
echo 'export PATH="/opt/homebrew/opt/postgresql@12/bin:$PATH"' >> ~/.zshrc
사용 중인 컴퓨터에 zsh 또는 bash_profile을 추가해야 합니다.
FreeBSD(9.1)에서 필요한 패키지는 /usr/ports/database/postgresql-server*입니다. 이 패키지를 설치하면 "pg"의 Gem 설치가 실패하는 필수 헤더 파일도 설치됩니다.이 답변은 제가 해결책을 찾는 데 도움이 되었지만 패키지 이름의 차이는 약간의 검색을 필요로 했습니다.
이것이 누군가가 FreeB에서 "-dev" 패키지를 검색할 때 머리를 긁는 것을 피하는 데 도움이 되기를 바랍니다.SD 시스템!
언급URL : https://stackoverflow.com/questions/6040583/cant-find-the-libpq-fe-h-header-when-trying-to-install-pg-gem
'programing' 카테고리의 다른 글
명령줄을 통해 OS X에서 간단한 Hello World 프로그램 컴파일 (0) | 2023.05.04 |
---|---|
업데이트 색인 실행 취소 --assume-unchanged (0) | 2023.05.04 |
Postgre로 Excel 데이터 가져오기SQL 9.3 (0) | 2023.05.04 |
Xcode에서 여러 줄을 들여쓰려면 어떻게 해야 합니까? (0) | 2023.05.04 |
Postgres가 특정 인덱스를 사용하도록 강제하려면 어떻게 해야 합니까? (0) | 2023.05.04 |