🌻 📖 Task::FFIDev

NAME

Task::FFIDev - Task bundle for FFI development

VERSION

version 0.02

SYNOPSIS

 $ cpanm Task::FFIDev

DESCRIPTION

This Task bundle is useful for those doing FFI development with FFI::Platypus. Installing it will give you these modules:

Dist::Zilla::MintingProfile::FFI

Dist::Zilla minting profile for creating FFI::Platypus bindings.

Dist::Zilla::Plugin::FFI

Dist::Zilla plugins useful for FFI

Dist::Zilla::Plugin::DynamicPrereqs

Dist::Zilla plugin for dynamic prereqs. Allows your FFI to use Aliens in fallback mode.

FFI::C

Create interfaces to C structured data.

FFI::CheckLib

Find dynamic libraries for use with FFI

FFI::Platypus

Library for writing your own FFI bindings in perl

FFI::Platypus::Type::Enum

Platypus type plugin for enumerated types

FFI::Platypus::Type::PtrObject

Platypus type plugin for opaque pointer objects

PeekPoke::FFI

Library for peeking and poking arbitrary memory locations.

Test2::Tools::FFI

Testing tools for FFI.

The latest versions as of when this Task was released should be installed at minimum, if they are not already installed.

Other prereqs may be added in the future if they are deemed useful for FFI development.

CAVEATS

This module does require Perl 5.20 or better currently, because at least some of its prereqs require that version. Note that FFI bindings authored with these tools should work on Perls of at least 5.8.4 or better, so this is just a development requirement.

This Task indirectly requires Alien::FFI. If you do not want to build that from source or do not have internet access where the build is happening, you will want to pre-install libffi. On Debian based systems you can do that with sudo apt-get update && sudo apt-get install libffi-dev.

AUTHOR

Graham Ollis <plicease@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2021 by Graham Ollis.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.