아홉째 날: plenv vs perlbrew

저자

@aanoaa - 홍형석, 사당동 펠프스, github:aanoaa

시작하며

perlbrew는 펄 커뮤니티 내에서 널리 사용되는 펄 설치 및 관리 도구입니다. Seoul.pm 크리스마스 달력에서 여러번 다뤄지기도 했죠.

perlbrew 릴리스 이후 거의 4년 만에 강력한 라이벌인 plenv가 나타났습니다.

plenv vs perlbrew

perlbrewplenv 모두 홈 디렉토리에 펄을 설치하고, 사용하는 쉘에서 마음대로 버전을 바꿔가며 사용할 수 있습니다. 또 사용하는 펄에 따라 모듈 설치 경로가 바뀝니다.

plenv 에는 perlbrew 와 차별화되는 두 가지 기능이 있습니다.

경로별 펄 버전 지정

perlbrew와는 달리 plenv는 특정 경로에서 사용할 펄을 강제로 지정할 수 있습니다. 다음 명령은 /path/to/.perl-version 파일을 만듭니다.

$ cd /path/to
$ plenv local 5.18.1

/path/to/.perl-version 파일에는 사용할 펄의 버전 정보가 단순한 텍스트 형식으로 담겨집니다.

$ cat /path/to/.perl-version
5.18.1

.perl-version 파일이 있는 한 /path/to 디렉터리 및 그 하부 디렉터리까지 5.18.1 버전을 사용하게 됩니다.

환경 변수로 펄 버전 지정

PLENV_VERSION 환경 변수를 사용하면 영구적이 아니라 환경 변수의 영향 아래서만 다른 버전의 펄을 사용할 수 있습니다.

$ PLENV_VERSION=system perl a.pl

정리하며

4년 전 혜성처럼 등장한 perlbrew 덕분에 시스템의 펄과는 별개의 펄 환경을 너무도 손쉽게 구축할 수 있게 되면서 펄 개발 환경은 무척 편리해졌었습니다. 사실 perlbrew는 여전히 CPAN의 최고 모듈 명단의 10위권 안에 들 정도로 여전히 인기있는 모듈입니다. 앞서 언급하지 않았지만 perlbrew에는 lib, upgrade-perl, self-upgradeplenv에는 없는 강력한 기능이 많습니다. 마찬가지로 plenv 역시 perlbrew를 사용하면서 아쉬웠던 부분을 구석구석 긁어주는 기능이 많죠. 필요에 따라 적절한 도구를 선택해서 사용하는 것은 여러분의 몫이겠죠? ;-)

blog comments powered by Disqus