database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
ㆍPostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
PostgreSQL Q&A 8965 게시물 읽기
No. 8965
libpqxx는 PostgreSQL DB가 설치된곳에서만 쓸 수 있나요?
작성자
송미란
작성일
2012-02-28 13:36ⓒ
2012-02-28 14:39ⓜ
조회수
10,121

리눅스에서 libpqxx를 쓸려고 ./configure해보니 아래와 같은 에러 메시지가 발생하더군요.

pg_config는 PostgreSQL DB를 설치하면 잡히는것 같은데 그럼 DB를 설치한곳에서만 쓸 수 있는건가요?

configure: error:
PostgreSQL configuration script pg_config not found.  Make sure this is in your
command path before configuring.  Without it, the configure script has no way to
find the right location for the libpq library and its headers.
 

이 글에 대한 댓글이 총 5건 있습니다.

 libpqxx 라이브러리를 컴파일 하려면, libpq 라이브러리와, 그 헤더 파일이 필요하다는 소리입니다. 

libpqxx 라이브러리는 libpq 라이브러리의 c++ 랩퍼거든요. 

바이너리 설치 환경이라면, postgresql-devel 패키지가 필요한 상황입니다. 

꼭 server가 있어야할 필요는 없습니다. 

김상기(ioseph)님이 2012-02-28 14:53에 작성한 댓글입니다.

감사합니다.그런데 'PostgreSQL configuration script pg_config not found' 에러를 해결하기 위해서는 ./configure를 어떻게 실행해야 하나요?

pg_config파일의 위치는 /usr/local/pgsql/bin/pg_config입니다.

./configure --prefix=/usr/local/pgsql 해봐도 같은 에러가 발생합니다.

송미란님이 2012-02-28 16:28에 작성한 댓글입니다.
이 댓글은 2012-02-28 16:30에 마지막으로 수정되었습니다. Edit

 configure 쉘 스크립트가 내부에서 

pg_config 명령을 실행할 수 있겠금 하라는 이야기인게죠. 

 

그러니까, configure 명령을 실행하기 전에, 쉘 프롬프트에서 그냥 pg_config 명령을 실행했을 때, 실행이 되어야 configure 명령이 정상적으로 작업을 한다는 이야기입니다. 

 

이러기 위해서는 pg_config 명령이 있는 디렉토리를 PATH 환경 변수에 등록해주어야합니다. 

 

PATH 환경 변수를 바꾸는 방법은 OS 사용설명서를 참조하시고.

 

김상기(ioseph)님이 2012-02-29 08:56에 작성한 댓글입니다.

정말 감사드립니다.덕분에 ./configure와 ./make까지 실행되었습니다.

그런데 make check 해보니까 다음과 같은 오류메시지가 뜨는데 왜 그런걸까요?

 

make  check-TESTS
make[3]: Entering directory `/home/ams/libpqxx-4.0/test/unit'
./runner: error while loading shared libraries: libpq.so.5: cannot open shared object file: No such file or directory
FAIL: runner
====================================================
1 of 1 test failed
Please report to Jeroen T. Vermeulen <jtv@xs4all.nl>
====================================================
make[3]: *** [check-TESTS] 오류 1
make[3]: Leaving directory `/home/ams/libpqxx-4.0/test/unit'
make[2]: *** [check-am] 오류 2
make[2]: Leaving directory `/home/ams/libpqxx-4.0/test/unit'
make[1]: *** [check-recursive] 오류 1
make[1]: Leaving directory `/home/ams/libpqxx-4.0/test'
make: *** [check-recursive] 오류 1
 

그리고 libpqxx-4.0 폴더안에 include폴더는 있지만 lib폴더는 없습니다.개발소스에서 include폴더만 링크하면 쓸수 있을까요?

 

 

송미란님이 2012-02-29 10:28에 작성한 댓글입니다.
이 댓글은 2012-02-29 10:29에 마지막으로 수정되었습니다. Edit

동적 라이브러리를 로딩할 수 없다고 하는 경우는 

OS에서 관리하는 동적 라이브러리 캐시에 등록되어 있지 않는 경우입니다. 

키워드는 ldconfig 명령과, LD_LIBRARY_PATH 환경변수입니다. 

 

제가 보기에는 유닉스 환경에서의 개발 관련 입문 서적이 먼저 필요할 듯합니다. 

(책이 있을런지 모르겠지만)

 

김상기(ioseph)님이 2012-02-29 11:10에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
89707K 길이의 텍스트 입력하는 방법? [2]
김동수
2012-03-11
9144
8968trigger 질문 [1]
서귀동
2012-02-29
8817
89679.0부터 생긴 테이블, 칼럼 단위 collate 사용자 정의 장점 [2]
김상기
2012-02-29
11483
8965libpqxx는 PostgreSQL DB가 설치된곳에서만 쓸 수 있나요? [5]
송미란
2012-02-28
10121
8964암호화 관련 질문드립니다. [1]
김종수
2012-02-28
8719
8963명령어 제한하는 방법을 알고 싶어요 ^ ^ [4]
김현진
2012-02-23
8748
8962postgre 설치 시의 암호설정 [1]
구자은
2012-02-23
8949
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.019초, 이곳 서비스는
	PostgreSQL v16.4로 자료를 관리합니다