Giả sử rằng các bạn đã cài đặt Perl trên hệ thống và sử dụng những thư mục sau để cài module Perl:
/home/perl_modules/bin
/home/perl_modules/man
/home/perl_modules/man/man1
/home/perl_modules/lib
Các bạn có thể tạo những thư mục trên (bin, man, man/man3 và lib) ở
bất kỳ vị trí nào, trong bài thử nghiệm này chúng tôi sẽ dùng những
đường dẫn trên để cấu hình và thiết lập Perl (các bạn cần lưu ý và thay
thế với hệ thống trong thực tế)./home/perl_modules/man
/home/perl_modules/man/man1
/home/perl_modules/lib
Tiếp theo, chúng ta sẽ phải khởi tạo một số biến Perl trên local, được dùng để “thông báo” về vị trí cài đặt module Perl. Để đảm bảo tính ổn định, các bạn nên khai báo tất cả các biến trong 1 file duy nhất và sau đó sử dụng file này để cài đặt Perl. Trước tiên là file perl_local_config trong thư mục /home:
touch perl_local_config
Chỉnh sửa file để tạo biến cấu hình:
PREFIX=/home/perl_modules \
INSTALLSCRIPT=/home/perl_modules/bin \
INSTALLBIN=/home/perl_modules/bin \
INSTALLMAN1DIR=/home/perl_modules/man1 \
INSTALLSITELIB=/home/perl_modules/lib
Tải module Perl từ CPAN, giải nén và mở thư mục bên trong. Sử dụng cú pháp sau để cài đặt module Perl:INSTALLSCRIPT=/home/perl_modules/bin \
INSTALLBIN=/home/perl_modules/bin \
INSTALLMAN1DIR=/home/perl_modules/man1 \
INSTALLSITELIB=/home/perl_modules/lib
perl Makefile.PL
make
make test
make install (nếu tất cả lệnh test thành công)
Nếu không có quyền truy cập root thì file Makefile.PL sẽ hiển thị lỗi, và đây là lúc phải sử dụng file cấu hình đã được khởi tạo ở bước trên. Gõ lệnh:make
make test
make install (nếu tất cả lệnh test thành công)
perl Makefile.PL `cat /home/perl_local_config`
Nếu các module Perl này phụ thuộc lẫn nhau thì câu lệnh trên sẽ tạo
ra lỗi, trong trường hợp đó thì các bạn cần tải và cài đặt các gói
module dependent – phụ thuộc tương ứng. Kiểm tra hệ thống bằng lệnh:
make
make test
Khi đã thành công, tiếp tục gõ lệnh:make test
make install
Tuy nhiên, trong khi triển khai các module Perl có thể bạn sẽ gặp phải lỗi như sau:
Can't locate Locale/Recode.pm in @INC (@INC contains: XXXXX......XXXXX) at /home/bin/your_perl_module line XX.
Điều này có nghĩa rằng Perl đang tìm kiếm module trong thư mục lib và
không phải là thư mục đã cài đặt trước đó. Để khắc phục, các bạn hãy
gán đường dẫn của thư mục lib trên hệ thống local đã được tạo trước đó
(trong ví dụ này là /home/perl_modules/lib) và đường dẫn chính như sau:
export PERL5LIB=/home/perl_modules/lib/perl5/:/home/perl_modules/lib/perl5/site_perl:
Và mọi vấn đề nảy sinh bên trên sẽ được giải quyết, chúng ta có thể
tiếp tục quá trình cài đặt module Perl như bình thường. Chúc các bạn
thành công!(MakeTechEasier) |
Không có nhận xét nào:
Đăng nhận xét