Module...ompiler(3pm)

πŸ’… Module::CPANTS::Kwalitee::NeedsCompiler

Okay bestie, so this page is from the Module::CPANTS::Kwalitee::NeedsCompiler manual (Perl, third section, 3pm β€” user contributed Perl docs, iykyk), and it's literally just one little Kwalitee check that's like… does this module need a compiler? Probably a C one? Let's get into it. 🧚

✨ NAME ✨

Module::CPANTS::Kwalitee::NeedsCompiler β€” it checks if your module needs a (probably C) compiler. That's it. That's the whole vibe check. πŸ‘‘

✨ SYNOPSIS ✨

It just checks if there's, like, some indication in the module that it needs a C compiler to build and install. Lowkey simple. πŸŽ€

✨ DESCRIPTION ✨

🌸 Methods 🌸

πŸ¦‹ order

This one defines the order in which the Kwalitee tests should be run, bestie. Sequencing matters!! πŸ’…

It returns 200. Periodt.

πŸ¦‹ analyse

Okay so here's where the actual detecting happens πŸ” β€” it checks for a file with .c, .h or .xs extensions. And it also checks whether the module depends on any of the Inline:: modules, or on ExtUtils::CBuilder, or on ExtUtils::ParseXS. That's the whole checklist, no cap.

TODO: (ooh, a note from the author themselves 🫢)

How to recognize cases such as https://metacpan.org/release/GAAS/Perl-API-0.01/ and https://metacpan.org/release/Term-Size-Perl that generate the .c files during installation 😭

And in addition β€” there are modules that can work without their XS part. E.g. Scalar-List-Utils, Net-DNS, Template-Toolkit. For our purposes, these all should be marked as "need C compiler", because they need it for their full functionality and speed. Like, yeah, they can survive without it, but they're not thriving, you know? ⭐

πŸ¦‹ kwalitee_indicators

No Kwalitee Indicator. That's literally it. Nothing here. Move along πŸ’€

🌈 SEE ALSO 🌈

  • Module::CPANTS::Analyse β€” go look at that one next, bestie πŸ’–

πŸ‘‘ AUTHOR πŸ‘‘

GΓ‘bor SzabΓ³ <https://metacpan.org/author/szabgab>

Copyright Β© 2006–2008 GΓ‘bor SzabΓ³ <https://metacpan.org/author/szabgab>

You may use and distribute this module according to the same terms that Perl is distributed under. Slay, honestly. πŸ’œ


And that's the whole page, bestie!! πŸ¦‹ This little cutie is from perl v5.40.1, dated 2026-07-05, and it's the Module...ompiler(3pm) page β€” go forth and know whether your module needs a compiler, mwah πŸ’‹πŸŒΈ

πŸ“¦ where this page comes from