What are common pitfalls or gotchas with toolchain (ExtUtils::MakeMaker, Module::Build)?

Common pitfalls and gotchas when using toolchains like ExtUtils::MakeMaker and Module::Build can lead to frustrating issues during Perl module development. Understanding these can improve your module's compatibility, ease of build, and overall usability.
ExtUtils::MakeMaker, Module::Build, Perl toolchain, module development, pitfalls, gotchas, best practices

# Example of a common pitfall in ExtUtils::MakeMaker
use ExtUtils::MakeMaker;

WriteMakefile(
    NAME         => 'MyModule',
    VERSION_FROM => 'lib/MyModule.pm', # If this file doesn't exist, it will fail
    PREREQ_PM    => { 'Some::Module' => 0 }, # Ensure this module is installed
);
    

ExtUtils::MakeMaker Module::Build Perl toolchain module development pitfalls gotchas best practices