사용환경

DBI 모듈 설치하고, perl에서 mysql 사용하려고 보니 DBD::mysql 모듈도 설치해야 했다. root 권한이 있다면 별 문제 없지만 루트 권한이 없다면? –삽질해야 한다. 다른 더 나은 방법이 있으면 제보 주시기를.

 

리눅스 CentOS 6.3 64bit
Perl 환경 : perlbrew로 설치한 perl 5.16.1
mysql-server 패키지는 설치 되어있음.
mysql-devel (mysql 소스던가?) 패키지는 없음 -> 본인 계정에 압축 풀었음(/home/jellypo/mysql-devel/)

rpm 파일 압축푸는건 rpm2cpio RPM파일 | cpio -id


cpanm DBD::mysql 해서 설치 되면 얼마나 행복하겠습니까만은 오류가 발생합니다.

결과적으로 제가 한 것들.
1. mysql-devel 패키지를 압축 풀고
2. Makefile 파일 내용 수정(mysql-devel 경로 지정)
3. /usr/lib64/mysql 안의 파일을 mysql-devel/usr/lib64/mysql/ 밑으로 복사

# cd .cpanm/latest-build/DBD-mysql-4.022
# perl Makefile.PL
# vim Makefile

Makefile 파일 수정, LDDLFLAGS, LDFLAGS, INC, LD_RUN_PATH 등의 변수를<br />/usr/local/lib, /usr/local/include 등을 mysql-devel 소스 압축푼 곳으로 변경<br />
https://metacpan.org/module/DBD::mysql
# make
중략 (make 실행 결과)
/usr/bin/ld: cannot find -lmysqlclient
collect2: ld returned 1 exit status
make: *** [blib/arch/auto/DBD/mysql/mysql.so] 오류 1
mysql-devel 압축 푼 곳에 .so 파일이 몇 개 빠져서 이러는 모양. /usr/lib64/mysql/ 안의 파일을 ~/mysql-devel/usr/lib64/mysql 로 복사했음.
# make
# make install


+ Recent posts

티스토리 툴바