CINXE.COM
Strawberry Perl for Windows
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <title>Strawberry Perl for Windows</title> <link rel="shortcut icon" type="image/vnd.microsoft.icon" href="/favicon.ico"> <link rel="stylesheet" type="text/css" href="initstyles.css"> <link rel="stylesheet" type="text/css" href="splash.css"> <script> (function (i, s, o, g, r, a, m) { i['GoogleAnalyticsObject'] = r; i[r] = i[r] || function () { (i[r].q = i[r].q || []).push(arguments) }, i[r].l = 1 * new Date(); a = s.createElement(o), m = s.getElementsByTagName(o)[0]; a.async = 1; a.src = g; m.parentNode.insertBefore(a, m) })(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga'); ga('create', 'UA-37040168-1', 'strawberryperl.com'); ga('require', 'displayfeatures'); ga('require', 'linkid', 'linkid.js'); ga('set', 'anonymizeIp', true); ga('send', 'pageview'); </script> </head> <body> <noscript>This page requires JavaScript.</noscript> <a href="https://github.com/StrawberryPerl" onclick="ga('send', 'event', 'Home', 'Click', 'GitHub');"><img style="position: absolute; top: 0; left: 0; border: 0;" src="images/githubL.png" alt="Join us on GitHub" data-canonical-src="images/githubL.png"></a> <div class="help"> <a href="support.html"><strong>Need help with a Strawberry Problem?</strong></a> </div> <div class="mainframe"> <h1>The Perl for MS Windows, free of charge!</h1> <div class="content"> <div class="text"> <p class="text-1"><b>Perl</b> is a programming language suitable for writing simple scripts as well as complex applications — see <a href="https://www.perl.org/">https://www.perl.org</a>.</p> <p class="text-2"><b>Strawberry Perl</b> is a perl environment for MS Windows containing all you need to run and develop perl applications. It is designed to be as close as possible to perl environment on UNIX systems.</p> <p class="text-3">It includes perl binaries, compiler (gcc) + related tools, all the external libraries (crypto, math, graphics, xml…), all the bundled database clients and all you expect from Strawberry Perl.</p> </div> <div class="downloads latest-download"> <p><strong>Latest Release Info</strong></p> <p>This info is gathered from our <a style="display: inline;" href="/releases.json">releases.json</a> file dynamically.</p> <p>That requires JavaScript.</p> </div> <div class="downloads"> <p><b>More downloads (all releases):</b></p> <a href="releases.html"><b>ZIP, Portable, special editions</b></a> You can find here release notes and other details. </div> </div> </div> <script type="module"> import { Releases, readableFileSize } from '/main.js'; window.addEventListener('load', async () => { try { // grab our list of releases const releases = await Releases.build('/releases.json'); // get the latest 64-bit release (always only show this on the main page) const latest = releases.latest(64); // build an HTML string to replace onto the page. let html = `<p><strong>Latest Release: ${latest.version} (${latest.date})</strong></p>`; latest.links.forEach((link) => { html += '<div class="latest-download-version" style="font-size: 0.9em;">'; html += `<a style="display: inline;" href="${link.url}" onclick="ga('send', 'event', 'Home', 'Download', '${link.displayName}');" > <b>${link.shortName}</b></a> (${readableFileSize(link.size)})`; html += `<small style="font-size: 0.65em; display: block;">Sha256: ${link.hash}</small>` html += '</div>'; }); // grab the HTML element we want to paint into. let elem = document.querySelector('.latest-download'); elem.innerHTML = html; } catch (error) { console.error(error); } }); </script> </body> </html>