MaxMind::DB::Writer - DEPRECATED Create MaxMind DB database files
version 0.300004
use MaxMind::DB::Writer::Tree;
my %types = (
color => 'utf8_string',
dogs => [ 'array', 'utf8_string' ],
size => 'uint16',
);
my $tree = MaxMind::DB::Writer::Tree->new(
ip_version => 6,
record_size => 24,
database_type => 'My-IP-Data',
languages => ['en'],
description => { en => 'My database of IP data' },
map_key_type_callback => sub { $types{ $_[0] } },
);
$tree->insert_network(
'8.8.8.0/24',
{
color => 'blue',
dogs => [ 'Fido', 'Ms. Pretty Paws' ],
size => 42,
},
);
open my $fh, '>:raw', '/path/to/my-ip-data.mmdb';
$tree->write_tree($fh);
This distribution contains the code necessary to write MaxMind DB database files. See MaxMind::DB::Writer::Tree for API docs.
This code is no longer maintained. We recommend using the Go mmdbwriter package to write MMDB files.
If you're running into install errors under Mac OS X, you may need to force a
build of the 64 bit binary. For example, if you're installing via cpanm
:
ARCHFLAGS="-arch x86_64" cpanm MaxMind::DB::Writer
This distribution does not currently work on Windows. Reasonable patches for Windows support are very welcome. You will probably need to start by making Math::Int128 work on Windows, since we use that module's C API for dealing with 128-bit integers to represent IPv6 addresses numerically.
Please report all issues with this code using the GitHub issue tracker at https://github.com/maxmind/MaxMind-DB-Writer-perl/issues.
We welcome patches as pull requests against our GitHub repository at https://github.com/maxmind/MaxMind-DB-Writer-perl.
Bugs may be submitted through https://github.com/maxmind/MaxMind-DB-Writer-perl/issues.
This software is copyright (c) 2023 by MaxMind, Inc.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.