Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

最近のPerlバイナリマネージャー Perl 編

852 Aufrufe

Veröffentlicht am

ll event 2018

Veröffentlicht in: Ingenieurwesen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

最近のPerlバイナリマネージャー Perl 編

  1. 1. 最近のPerlバイナリマ ネージャー Perl 編 @tokuhirom LINE Corporation
  2. 2. 自己紹介 • Shibuya.pm の方から来ました • Principal server side engineer@LINE Corp • Author of plenv • CPAN module を100個ぐらい書いた • Committer of the Perl6
  3. 3. 歴史 • 人々は手で perl をビルドしていた • 複数バージョンのインストール/管理が面倒 • ビルド手順が面倒
  4. 4. Perl = CPAN Module を使うための DSL
  5. 5. 非プログラマー職の ユーザーが多い
  6. 6. めっちゃ古い Perl で 動かないというバグレ ポートがめっちゃ来る
  7. 7. perlbrew の登場 • Feb. 2010 • curl -L https://install.perlbrew.pl | bash • perlbrew install 5.23.0
  8. 8. perlbrew でできること • ダウンロード • ビルド • インストール • 複数バージョンの管理
  9. 9. perlbrew の問題点 • コマンドの起動が遅い • perlbrew コマンド自体が perl で実装されてるからコマ ンド実行時に perl が毎回走る
  10. 10. ruby などでは rbenv が流行り始めた • pure shell script なので速そう!
  11. 11. • cp -a rbenv/ plenv/ • perl -i -pe ’s/rbenv/plenv/g; s/ruby/perl/g’ plenv/**/*
  12. 12. plenv has great new features • アプリケーション単位で perl のバージョンをかえられる • .plenv in current directory • 環境変数でバージョンきりかえ • perlbrew 重い • pure bash script • 挙動がわかりやすい
  13. 13. 切り替え • plenv local 5.8.2 • ./.perl-version • plenv global 5.8.2 • export PLENV_VERSION=5.8.2
  14. 14. perl-build
  15. 15. perl-build • perl binary をビルドするやつ。便利。 perl-build 5.26.2 /opt/perl-5.26/ curl -L https://raw.githubusercontent.com/tokuhirom/Perl- Build/master/perl-build | perl - 5.26.2 /opt/perl-5.26/
  16. 16. 最近のイシュー • search.cpan.org から tar ball の url を検出する機能 • search.cpan.org が終わった……
  17. 17. Devel::PatchPerl • 古いバージョンの Perl に対するパッチ集 • CPAN に上がっている • 有志でメンテされている • Security fix のバックポート • 最近のshell で動かなくなったshell script • 7500行ぐらいのモジュール
  18. 18. Perl6 はどうなの?
  19. 19. rakudobrew • git clone https://github.com/tadzik/rakudobrew ~/.rakudobrew • export PATH=~/.rakudobrew/bin:$PATH • rakudobrew init • rakudobrew build moar • rakudobrew build zef • rakudobrew rehash
  20. 20. Perl6 のライブラリはど うインストールするの ?
  21. 21. panda was gone
  22. 22. zef • zef install CSV::Parser
  23. 23. まとめ • plenv 便利 • rakudobrew 便利 • Perl6 の場合は zef を使おう

×