it-swarm-vi.tech

Phiên bản nào của Perl tôi nên sử dụng trên Windows?

Trang web win32.Perl.org cung cấp tài liệu tham khảo cho một số bản phân phối Perl cho MS Windows.

Trong một thời gian dài tôi đã sử dụng ActivePerl từ ActiveState nhưng gần đây tôi đã chuyển sang Strawberry Perl .

IMHO Ưu điểm duy nhất mà Active Perl vẫn có trên Strawberry Perl là nó đi kèm với Perl Tk, có nghĩa là nó dễ cài đặt Devel :: ptkdb trình gỡ lỗi đồ họa. Ngoài ra, tôi nghĩ Strawberry Perl có tất cả những lợi thế.

96
szabgab

Strawberry Perl đang ngày càng tốt hơn. Một vấn đề tôi đã liên tục gặp phải với ActiveState là các mô-đun của tôi đôi khi không cài đặt được vì tôi cần nâng cấp lên mô-đun lõi, nhưng chúng sẽ không cho phép điều đó. Do đó, mọi người không sử dụng Windows có thể sử dụng mã của tôi, nhưng họ không thể làm điều đó với Perl của ActiveState.

ActiveState cũng có một hệ thống xây dựng rất tinh ranh thường không báo cáo chính xác lý do tại sao một mô-đun không thể xây dựng. Tôi đã quá mệt mỏi với việc gửi email và yêu cầu thông tin này mà cuối cùng tôi đã từ bỏ. Tôi muốn mã của mình chạy trên Windows, nhưng nếu ActiveState không cung cấp cho tôi thông tin đó và không cung cấp cho tôi bất kỳ tùy chọn nào để nâng cấp các mô-đun lõi, tôi không thể sử dụng nó. Một số mô-đun của tôi KHÔNG có lỗi xây dựng trên bất kỳ hệ điều hành nào - ngoại trừ các mô-đun có ActiveState Perl. Hỗ trợ Strawberry Perl và đừng lo lắng về ActiveState.

Nếu ActiveState đã sửa hệ thống xây dựng của họ và chính sách 'không nâng cấp lên các mô-đun cốt lõi', thì đáng để xem lại.

79
Ovid

Không có phân phối Perl tốt nhất. Vanilla Perl (có thể định vị lại, có thể phân phối lại) và nó thân thiện với nhà phát triển hơn Strawberry Perl có tiềm năng đáng kể.

Tuy nhiên, có một lý do rất chính đáng tại sao ActivePerl lại rất phổ biến. Các ưu điểm chủ yếu đến ở dạng dễ triển khai cho người dùng cuối của bạn (không cần trình biên dịch để sử dụng trình quản lý gói của họ, PPM). ActiveState PDK (Bộ phát triển Perl) cũng là một cách rất hay để đóng gói nhị phân Windows hoàn chỉnh không yêu cầu bất kỳ Perl nào được cài đặt trên máy của người dùng.

Thật không may, nhiều mô-đun CPAN rất đẹp (như các ràng buộc Perl cho OpenSSL) không có sẵn thông qua kho lưu trữ của ActiveState.

Giống như hầu hết mọi thứ, bạn nên lựa chọn dựa trên phân phối nào đáp ứng tốt nhất nhu cầu của bạn.

30
Darren Meyer

Tôi chủ yếu sử dụng ActivePerl, nhưng tôi thực sự thích nơi Strawberry Perl đang hướng tới. Tôi thích rằng cpan Shell "chỉ hoạt động" và tôi không phải nhảy qua một loạt các vòng để cài đặt các mô-đun XS. (ví dụ: ExtUtils :: FakeConfig, mặc dù điều đó ít cần thiết hơn trong các bản dựng ActivePerl gần đây.) Tôi cũng rất phấn khích về khả năng Perl trên một ngón tay cái. Bản phát hành dev của Portable Perl đã có thể sử dụng được.

Tôi đồng ý rằng ưu điểm chính của ActivePerl là Tk vượt trội, nhưng lưu ý rằng kể từ 5.10 ActivePerl không còn xuất xưởng với Tk theo mặc định. Nó vận chuyển với Tkx thay thế.

17
Michael Carman

Tương lai chắc chắn là Dâu ​​Perl. Dù bạn đã chọn (và vấn đề này không phải là duy nhất với Windows), nếu bạn đang phân phối kết quả cuối cùng cho các máy khác, bạn sẽ phải cẩn thận về các hướng dẫn cài đặt/cài đặt mà bạn cung cấp.

13
Penfold

Strawberry Perl giống như Perl trên * nix. Nó đi kèm với MinGW có thể hữu ích cho chính nó. Các mô-đun Perl cũng có thể được cài đặt với ppm hoặc cpan.

6
Rob Kam

Tôi xa thích Dâu Perl. Đối với một, nó cài đặt gcc như một phần của mingwin, để bạn có thể cài đặt trực tiếp từ CPAN.

Tôi đã sử dụng Perl của ActiveState trong một thời gian, nhưng tôi có rất nhiều sự rung động từ máy này sang máy khác mặc dù chúng (dường như) được cấu hình giống hệt nhau. Ngoài ra, việc đóng gói mô đun PPM của họ cũng rất tệ. Việc quản lý gói đơn giản, nhưng bạn dựa vào chúng để cập nhật PPM sau khi cập nhật CPAN Ngoài ra, PPM không có nghĩa là toàn bộ nội dung của CPAN; Lần cuối cùng tôi sử dụng ActivePerl, tôi đã gặp khó khăn khi tìm tất cả các mô-đun tôi cần và các mô-đun tôi cần đó thường là một phiên bản cũ.

4
gWaldo

ActiveState Perl đã được coi là Windows Perl trên thực tế trong một thời gian dài. Mặc dù nó có rất nhiều sai sót và rất nhiều người trong chúng ta sử dụng một cái gì đó khác, nhưng nó vẫn rất phổ biến. Nếu bạn đang xây dựng mã Perl để được thực thi trên máy Windows (không phải mã của bạn), tôi sẽ xem xét việc viết mã bằng mắt theo mặc định (hoặc mặc định như tôi có thể nhận được) NHƯ cài đặt Perl thực thi nó. Bất cứ điều gì khác và bạn đang giới thiệu các rào cản để nhập cảnh cho những người khác đang cố gắng sử dụng ứng dụng của bạn sau này.

3
phreakre

Tôi luôn sử dụng Cygwin (xterms với bash tốt hơn nhiều so với cửa sổ cmd) và Perl đi kèm với nó. Tôi cài đặt các mô-đun Perl với CPAN Shell (lệnh "cpan"); nó hoạt động tốt.

3
reinierpost

Tôi gặp vấn đề lớn với Dâu và tôi cảm thấy không có sự hỗ trợ nào. Những người tốt ở PerlMonks không thể giúp tôi, và tôi đã từ bỏ. Nếu trang này khiến bạn thiếu tự tin nhất định, có câu trả lời của bạn.

2
AmbroseChapel

Mã tôi viết nằm trong các công ty Fortune 500 nên cảm giác "tập thể" là hữu ích. Tôi đã sử dụng ActivePerl cho đến nay và nó hoạt động tốt cho cả công cụ nội bộ và phân phối cho những khách hàng lớn đó.

2
aczarnowski

Tôi đang sử dụng Active State Perl 5.014, hoạt động tốt.

[.___.] Vấn đề là, nó không có phiên bản mới nhất của Padre (IDE, môi trường gỡ lỗi).

1
Helen Craigman